如果从电子电路角度出发,带宽(Bandwidth)本意指的是电子电路中存在一个固有通频带,这个概念或许比较抽象,我们有必要作进一步解释。大家都知道,各类复杂的电子电路无一例外都存在电感、电容或相当功能的储能元件,即使没有采用现成的电感线圈或电容,导线自身就是一个电感,而导线与导线之间、导线与地之间便可以组成电容——这就是通常所说的杂散电容或分布电容;不管是哪种类型的电容、电感,都会对信号起着阻滞作用从而消耗信号能量,严重的话会影响信号品质。这种效应与交流电信号的频率成正比关系,当频率高到一定程度、令信号难以保持稳定时,整个电子电路自然就无法正常工作。为此,电子学上就提出了“带宽”的概念,它指的是电路可以保持稳定工作的频率范围。而属于该体系的有显示器带宽、通讯/网络中的带宽等等。

  而第二种带宽的概念大家也许会更熟悉,它所指的其实是数据传输率,譬如内存带宽、总线带宽、网络带宽等等,都是以“字节/秒”为单位。我们不清楚从什么时候起这些数据传输率的概念被称为“带宽”,但因业界与公众都接受了这种说法,代表数据传输率的带宽概念非常流行,尽管它与电子电路中“带宽”的本意相差很远。
  对于电子电路中的带宽,决定因素在于电路设计。它主要是由高频放大部分元件的特性决定,而高频电路的设计是比较困难的部分,成本也比普通电路要高很多。这部分内容涉及到电路设计的知识,对此我们就不做深入的分析。而对于总线、内存中的带宽,决定其数值的主要因素在于工作频率和位宽,在这两个领域,带宽等于工作频率与位宽的乘积,因此带宽和工作频率、位宽两个指标成正比。不过工作频率或位宽并不能无限制提高,它们受到很多因素的制约,我们会在接下来的总线、内存部分对其作专门论述。
 
 
 
2222222222222222222
 

""梁先生说,带宽实际上应该分为物理带宽和逻辑带宽。带宽的单位是每秒可以通过的字节数,严格讲是一个速度概念,但通常用来表示传输信道的容量。 ""

请问:网络上带宽的单位到底是 Mbps(b:byte),Mbps(b:bits)?????
其他地方的带宽问题:

带宽正传--关于带宽的基础知识
--------------------------------------------------------------------------------

  现在的内存种类很多,对数据的传输速度也各不相同,我们怎样去计算它们传输速度的快慢?面对各种显卡芯片怎样去看待显存带宽?甚至在显示器参数中也有带宽,看来带宽还真是无处不在,就让我们一起来听听关于带宽的故事,了解一下带宽的基础知识。

  带宽正传——存储器带宽基础知识

  带宽这个词在电子学领域里很常用,它的意思是指波长、频率或能量带的范围,特指以每秒周数表示频带的上、下边界频率之差。可以显见带宽是用来描述频带宽度的,但是在数字传输方面,也常用带宽来衡量传输数据的能力。用它来表示单位时间内传输数据容量的大小,表示吞吐数据的能力。

  在很多文章里往往看见关于带宽的各种描述,那么怎么计算有关存储器的带宽呢?对于存储器的带宽计算有下面的方法:

  B表示带宽,F表示存储器时钟频率,D表示存储器数据总线位数,则带宽为:

  B=F×D/8

  例如,PC-100的SDRAM带宽计算如下:

  100MHZ×64BIT/8=800MB/S

  当然,这个计算方法是针对仅靠上升沿信号传输数据的SDRAM而言的,对于上升沿和下降沿都传输数据的DDR来说计算方法有点变化,应该在最后乘2,因为它的传输效率是双倍的,这也是DDR能够有如此高性能的重要原因。

  对于和存储器带宽关系很大的总线带宽也同样可以利用这个方法来计算,例如PCI和AGP等总线。比如,PCI带宽=33MHz×32BIT/8=133MB/S,AGP 1X总线的带宽为66MHz×64BIT/8=528MB/S,AGP 4X带宽=528MHz×4=2.1GB/秒。

  通过这样的计算我们不难看出,总线的发展伴随着带宽的扩展,只有高带宽的总线才能不断的满足当前各种硬件对数据传输的要求。比如显卡当年从PCI总线到AGP,正是因为PCI总线的133MB/S传输速率早已不能满足各种图形处理的要求。而从AGP1X到AGP4X直到AGP8X都使得传输带宽不断的得到了扩展。

  通过计算出的带宽是理论值,既它们可以达到的最大峰值带宽,通过对峰值带宽的比较我们可以了解各种内存的性能,下表就给出了常见内存的峰值带宽。

常见的内存峰值带宽表

PC-66 SDRAM
528 MB/s

PC-100 SDRAM
800 MB/s

PC-133 SDRAM
1064 MB/s

PC-150 SDRAM
1200 MB/s

PC-600 RDRAM
1200 MB/s

PC-800 RDRAM
1600 MB/s

PC-1600 DDR
1600 MB/s

PC-2100 DDR
2100 MB/s

  在实际工作时这些存储单元未必能达到峰值带宽,影响带宽的因素还很多。比如,因为数据写入和读出存储单元总要有一定的延迟时间。除了延迟时间影响带宽外,所存储数据的命中率也有重要关系。当把这些因素考虑在内,即便是100%的命中率,PC100的SDRAM的实际带宽只有峰值带宽的40%。

  从上面给出的带宽计算方法可知,带宽不仅和时钟频率有关还和存储单元的数据总线位数有关。而我们面对各种显卡显存的时候关注的是它的时钟频率,计算带宽还需要显存的位数。显存在显卡上发挥着重要的作用,而各种显卡芯片支持显存的位数也是有差异的,厂商们也是在扩展显存位数,以达到提升显存带宽的目的。下表给出常见的显卡芯片支持显存位数。

芯片型号 支持显存位数(BIT) 芯片型号 支持显存位数
VOODOO3-2000\3000\3500 128 RADEON VE 64(DDR)
VOODOO4-4500\5500\6000 256 G400\G400MAX 128
TNT2\TNT2pro\TNT2 Ultra 128 G450\G550 128(DDR)
TNT2M64\TNT2Vanta 64 Savage4GT/PRO/PRO+ 128
GeForce256 128 Savage2000/ 2000+ 128
GeForceMX GeForceMX400 64/128SDRAM或64(DDR) Kyro KyroII 128
GeForceMX200 64 SIS300/SIS305 128
GeForceGTS\Pro\Ultra GeForce3 128(DDR) SIS315 128(DDR)
RADEON\SE\LE 128或128(DDR) BLADE XP 128

  带宽外传——显示器的带宽

  我们在购买显示器时也常常会看见带宽这个词,在这里,它和存储领域的带宽有所区别,它更贴近传统的电子学里的带宽定义。显示器的参数——带宽代表的是显示器的一个综合指标,也是衡量一台显示器好坏的重要指标。它是指显示器每秒钟所扫描的像素数量,也就是说在单位时间内,每条扫描线上显示的像素点的总和,单位是Hz。显示器的带宽大小同样有一定的计算方法的,大家在选择一款显示器的时候可以根据一些参数来计算带宽,或者根据带宽来计算一些参数。这样可以很清楚的了解显示器的底细,JS想隐瞒都不行。

  详细的显示器带宽计算方法如下:

  用r(x)表示每条水平扫描线上的图素个数;r(y)表示每帧画面的水平扫描线数;V表示每秒钟画面的刷新率;B表示带宽。则显示器带宽的计算公式是:

  B = r(x)×r(y)×V

  但是在实际中,为了避免信号在扫描边缘的衰减,保证图像的清晰,实际上电子束水平扫描的图素的个数和行扫描频率均要比理论值要高一些。所以,在实际中,带宽的计算公式中加上了一个1.3的参数:

  B = r(x)×r(y)×V×1.3

  根据上面的公式,我们就可以比较清楚的了解到带宽的实际意义。当显示器的刷新率提高一点的话,它的带宽就会要提高很多。例如,当用户在挑选显示器的时候,显示器标称可以在1024×768的分辨率,和85Hz的刷新率下正常显示的话,我们就可以计算出这台显示器的实际带宽为:

  B =1024×768×85×1.3 = 87MHz

  带宽的大小在选择显示器的时候是很重要的,如果有的显示器没有标明带宽,只标明了最大分辨率和在此分辨率下所能达到的最高的刷新率,我们就可以根据上面的公式计算出显示器的带宽;反之,我们也可以根据显示器的带宽来计算出显示器在最大分辨率下的刷新率等参数。

  好了朋友们,带宽的故事就讲到这里了,不管是正传还是外传,希望有助于大家对带宽有个完整的认识

带宽的单位为什么是Hz而不是bps?的更多相关文章

  1. 相位噪声 dBc/Hz

    相位噪声和抖动是对同一种现象的两种不同的定量方式.在理想情况下,一个频率固定的完美的脉冲信号(以1 MHz为例)的持续时间应该恰好是1微秒,每500ns有一个跳变沿.但不幸的是,这种信号并不存在.如图 ...

  2. Loadrunner通过吞吐量计算每个用户需要的带宽

    Loadrunner通过吞吐量计算每个用户需要的带宽 运行一个场景,点击Analysis进行分析,使用分析报告中的Average Throughput(bytes/second)进行计算. 计算公式: ...

  3. linux系统带宽监测脚本

    服务器可能经常遇到服务器出带宽跑满,不知如何查询被哪个进程占用的情况,有一款开源的英文软件iftop功能比较强大可以查询相关信息,可能刚接触linux系统的朋友不太会使用,在此写了一个功能比较简单无需 ...

  4. Chapter Zero 0.1.4 计算机上常用的计算单位

    0.1 计算机硬件 计算机上常用的计算单位 容量单位: 计算机对于数据的判断依据有没有通电来记录信息,对于每个记录而言, 他只认识0或1,而0/1这个二进制单位我们成为bit. 因为bit太小,所以存 ...

  5. matlab与python scipy.signal中 freqs freqz 中w,什么时候是角频率,什么时候是真实的工程中使用的采样频率Hz,如何转化

    matlab与python scipy.signal中的freqs,freqz频率分析函数,输出的w,有时候是角频率,有时候是真实频率,容易搞混,这里对比一下. 0.  精要总结: 1) freqs: ...

  6. Linux下java获取CPU、内存、磁盘IO、网络带宽使用率

    一.CPU 使用proc文件系统,"proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系统内核数据的操作提供接口.用户和应用程序可以通过proc得 ...

  7. 【温故而知新】Tcp/Ip协议——总览

    Tcp/Ip协议 一.概念 “三网”:即电信网络.有线电视网络和计算机网络 标准(Standards) 描述了协议的规定,设定了最简的性能集. 协议(Protocol) 网络设备用于交换信息的系列规则 ...

  8. 菜鸟笔记 -- Chapter 1 计算机从0到1

    进入20世纪第二个十年,计算机已经成为生活中一个必不可小的工具了,但我们真的了解计算机吗?计算机有哪些部分构成?不同的计算机又可以做什么样的事情呢?我们的PC和用来做加减乘除的计算器都属于计算机范畴吗 ...

  9. Sox语音转换的相关知识

    SoX-linux 里操作音频的瑞士军刀 Sox是最为著名的Open Source声音文件 格式转换工具.已经被广泛移植到Dos.windows.OS2.Sun.Next.Unix.Linux等多个操 ...

随机推荐

  1. CentOS 6.9下的Setup工具(用于管理服务/防火墙/网络配置/验证服务)

    说明:Setup工具套件好像是CentOS下特有的用于管理服务/防火墙/网络配置等,其实就是基于命令行模式界面的GUI工具.唯一特点就是方便. 安装: #安装Setup命令工具 yum -y inst ...

  2. 解决Visual Studio 2013 XAML设计器异常

    今天使用Visual Studio 2013打开一个windows 应用商店程序的时候,发现出现如下异常:    at System.Windows.Input.Cursor.LoadFromFile ...

  3. facebook 分享

    在 Android 平台分享 本指南详细介绍如何通过 Android 应用将内容分享到 Facebook.用户通过您的应用分享时,相关内容会在其时间线上显示,并且可能在其好友的动态消息中显示. 用户还 ...

  4. VUE -- vue.js中$watch的用法示例

    Vue.js 提供了一个方法 watch,它用于观察Vue实例上的数据变动.对应一个对象,键是观察表达式,值是对应回调.值也可以是方法名,或者是对象,包含选项. 在实例化时为每个键调用 $watch( ...

  5. DWZ(一):框架初了解

    DWZ富client框架(jQuery RIAframework),是中国人自己开发的基于jQuery实现的Ajax RIA开源框架. DWZ富client框架设计目标是简单有用.扩展方便.高速开发. ...

  6. Delphi 7下最小化到系统托盘

    在Delphi 7下要制作系统托盘,只能制作一个比较简单的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是比较早的版本.定义如下: 123456789   _NOTIFY ...

  7. 开发板tftp:timeout问题

    想要从PC上面tftp文件的时候遇到了tftp:timeout的问题: >: tftp -gr gprsapp 192.168.1.38tftp: timeout 检查了网络,可以ping的通P ...

  8. 安装Node.js、npm和环境变量的配置

    由于Node.js平台是在后端运行JavaScript代码,所以,必须首先在本机安装Node环境. 一.安装Node.js 首先,从Node.js官网下载对应平台的安装程序,网速慢的童鞋请移步国内镜像 ...

  9. http://zhidao.baidu.com/link?url=fX6C1xFLsqiuTY88cjwJYal2x52rOwlJstmz7KWyMc6l9j3FHw2yhvp83timZ86pwhqQ8rONj2xkgo2wbU2tLK

    http://zhidao.baidu.com/link?url=fX6C1xFLsqiuTY88cjwJYal2x52rOwlJstmz7KWyMc6l9j3FHw2yhvp83timZ86pwhq ...

  10. 依据出生日期Date 计算年龄

    依据出生日期计算年龄 public class DateGetAge { public static int getAge(Date birthDay) throws Exception { Cale ...