硬件那些事
1、计算机硬件五大单元

2、CPU架构
(1)RISC与CISC
CPU其实内部已经含有一些微指令,我们所使用的软件都要经过CPU内部的微指
令集来达成才行。那这些指令集的设计主要又被分为两种设计理念,这就是目前世界.上常见到的两种主要CPU架构,分别是: 精简指令集(RISC) 与复杂指令集(CISC) 系统。
①常见的RISC 微指令集CPU主要例如甲骨文(Oracle)公司的SPARC系列、IBM 公司的Power Architecture (包括PowerPC) 系 列、与安谋公司(ARM Holdings)的ARM CPU系列等。
- SPARC CPU的计算机常用于学术领域的大型工作站中,包括银行金融体系的主服务器也都有这类的计算机架构;
- PowerPC架构的应用上,例如新力(Sony)公司出产的Play Station 3(PS3)就是使用PowerPC架构的Cell处理器;
- 安谋的ARM就是你常使用的各厂牌手机、PDA、导航系统、网络设备(交换器、路由器等)等,几乎都是使用ARM架构的CPU喔!
老实说, 目前世界上使用范围最广的CPU可能就是ARM这种架构的呢!
②常见的CISC微指令集CPU主要有AMD、Intel、 VIA 等的x86架构的CPU。
由于AMD、Intel、 VIA所开发出来的x86架构CPU被大量使用于个人计算机(Personal computer)用途,因此,个人计算机常被称为x86架构的计算机!那为何称为x86架构呢?这是因为最早的那颗Intel发展出来的CPU代号称为8086,后来依此架构又开发出80286, 80386…..因此这种架 构的CPU就被称为x86架构了。
在2003年以前由Intel所开发的x86架构CPU由8位升级到16、32位,后来AMD依此架构修改新一代的CPU为64位,为了区别两者的差异,因此64位的个人计算机CPU又被统称为x86_64 的架构喔!
(2)CPU频率
CPU内部含有微指令集,不同的微指令集会导致CPU工作效率的优劣。除了这点之外,CPU效能的比较还有什么呢?那就是CPU的频率了!什么是频率呢?简单的说,频率就是CPU每秒钟可以进行的工作次数。所以频率越高 表示这颗CPU单位时间内可以作更多的事情。举例来说,Intel的i7-4790 CPU频率为3.6GHz,表示这颗CPU在1秒内可以进行3.6x(10的9次方) 次工作,每次工作都可以进行少数的指令运作之意。
注意,不同的CPU之间不能单纯的以频率来判断运算效能喔!这是因为每颗CPU的
微指令集不相同,架构也不见得一样,可使用的第二层快取及其计算器制可能也不同,加上每次频率能够进行的工作指令数也不同!所以,频率目前仅能用来比较同款CPU的速度!
(3)外频、倍频、超频
在早期的CPU设计中,所谓的外频指的是CPU与外部组件进行数据传输时的速度,倍频则是CPU内部用来加速工作效能的1个倍数,两者相乘才是CPU的频率速度。例如Intel Core 2E8400的内频为3.0GHz,而外频是333MHz,因此倍频就是9倍!(3.0G=333Mx9,其中1G=1000M)
很多计算机硬件玩家很喜欢玩[超频」,所谓的超频指的是: 将CPU的倍频或者是外
频透过主板的设定功能更改成较高频率的一-种方式。但因为CPU的倍频通常在出厂时已经被锁定而无法修改,因此较常被超频的为外频。举例来说,像上述3.0GHz的CPU如果想要超频,可以将他的外频333MHz调整成为400MHz,但如此一来整个主板的各个组件的运作频率可能都会被增加成原本的1.333 倍(4/3),虽然 CPU可能可以到达3.6GHz,但却因为频率并非正常速度,故可能会造成宕机等问题。
现在Intel 的CPU会主动帮我们超频喔!例如i7-4790 这颗CPU的规格中,基本频率为3.6GHz, 但是最高可自动超频到4GHz喔!透过的是 Intel的turbo 技术。同时,如果你没有大量的运算需求,该CPU频率会降到1.xGHz 而已,藉此达到节能省电的目的!所以,各位好朋友,不需要自己手动超频了! Intel 已经自动帮你进行超频了,所以,如果用cpu-z 观察CPU频率,发现该频率会-一直 自动变动,很正常!你的系统没坏掉!
(4)CPU等级
由于x86架构的CPU在Intel的Pentium[ 奔腾处理器 ]系列(1993年)后就有不统一的脚位与设计,为了将不同种类的CPU规范等级,所以就有i386,i586,i686等名词出现了。基本上,在Intel Pentium MMX与AMD K6年代的CPU称为i586等级,而 Intel Celeron[ 赛扬处理器 ]与AMD Athlon[ 速龙 ](K7)年代之后的32位CPU就称为i686等级。至于目前的64位CPU则统称为x86_64等级。 目前很多的程序都有对CPU做优化的设计,万一哪天你发现一些程序是注明给x86 64 的CPU使用 时,就不要将他安装在686以下等级的计算机中,否则可是会无法执行该软件的!不过, 在x86_64的硬件下倒是可以安装386的软件喔!也就是说,这些东西具有向下兼容的能力啦!
(5)超线程(Hyper Threading, HT)
现在的CPU至少都是两个核心以上的多核心CPU了,但是Intel还有个很怪的东西,叫做CPU的超线程(Hyper-Threading) 功能!那个是啥鬼东西?我们知道现在的CPU指令周期都太快了,因此运算核心经常处于闲置状态下。而我们也知道现在的系统大多都是多任务的系统,同时间有很多的程序会让CPU来执行。因此,若CPU可以假象的同时执行两个程序,不就可以让系统效能增加了吗?反正CPU的运算能力还是没有用完啊! 那是怎么达成的啊这个HT功能?
其实就是,在每一个CPU 内部将重要的缓存器(register) 分成两群,而让程序分别使用这两群缓存器。也就是说,可以有两个程序「同时竞争CPU的运算单元」,而非透过操作系统的多任务切换!这一过程就会让CPU好像[同时有两个核心」的模样!因此,虽然大部分i7等级的CPU其实只有四个实体核心,但透过HT的机制,则操作系统可以抓到八个核心!并且让每个核心逻辑上分离,就可以同时运作八个程序了。
虽然很多研究与测试中,大多发现HT虽然可以提升效能,不过,有些情况下却可能导致效能降低喔!因为,实际上明明就仅有一个运算单元嘛!具体情况具体分析使用。
注意:
- 防呆(英语:Fool-proofing)是一种预防矫正的行为约束手段,运用避免产生错误的限制方法,让操作者不需要花费注意力、也不需要经验与专业知识即可直觉无误完成正确的操作。
- 防呆是由英文直译的名词,在工业设计上,为了避免使用者的误操作造成机器或人身伤害,(包括无意识的动作或下意识的误动作或不小心的肢体动作),会有针对这些可能发生的情况来做预防措施,称为防呆。
- 内存是有正反位置区分的,一般内存在制造的时候,有特殊的设计,那就是防呆插口,就是内存金手指中间的缺口! 最常见的SD内存有两个缺口,DDR内存有一个缺口,缺口两边的长度是不相等的,如果你插反了,就插不下去,防止新手在安装的时候插错了造成损失。
2、内存
CPU所使用的数据都是来自于主存储器(main memory),不论是软件程序还是数据,都必须要读入主存储器后CPU才能利用。个人计算机的主存储器主要组件为动态随机存取内存(Dynamic Random Access Memory, DRAM),随机存取内存只有在通电时才能记录与使用,断电后数据就消失 了。因此我们也称这种RAM为挥发性内存。
DRAM根据技术的更新又分好几代,而使用上较广泛的有所谓的SDRAM与DDR SDRAM两种。这两种内存的差别除了在于脚位与工作电压上的不同之外,DDR是所谓的双倍数据传送速度(Double Data Rate),他可以在 一次工作周期中进行两次数据的传送,感觉上就好像是CPU的倍频啦!所以传输频率方面比SDRAM还要好。新一代的PC大多使用DDR内存了。下表列出 SDRAM与DDR SDRAM的型号与频率及带宽之间的关系。

DDR SDRAM又依据技术的发展,有DDR, DDR2, DDR3, DDR4等等,其中,DDR2的频率倍数则是4倍,而DDR3则是8倍喔!
3、DRAM与SRAM
除了主存储器之外,事实上整部个人计算机当中还有许许多多的内存存在喔!最为我们所知的就是CPU内的第二层高速缓存。我们现在知道CPU的数据都是由主存储器提供,但CPU到主存储器之间还是得要透过内存控制器啊!如果某些很常用的程序或数据可以放置到CPU内部的话,那么CPU数据的读取就不需要跑到主存储器重新读取了!这对 于效能来说不就可以大大的提升了?这就是第二层快取的设计概念。第二层快取与主存储器及CPU的关系如下图所示:

因为第二层快取(L2 cache)整合到CPU内部,因此这个L2内存的速度必须要CPU频率相同。使用DRAM是无法达到这个频率速度的,此时就需要静态随机存取内存(Static Random Access Memory, SRAM)的帮忙了。SRAM 在设计
上使用的晶体管数量较多,价格较高,且不易做成大容量,不过由于其速度快,因此整合到CPU内成为高速缓存以加快数据的存取是个不错的方式喔!新一代的CPU都有内建容量不等的L2快取在CPU内部,以加快 CPU的运作效能。
4、只读存储器(ROM)
主板上面的组件是非常多的,而每个组件的参数又具有可调整性。举例来说,CPU与内存的频率是可调整的;而主板上面如果有内建的网卡或者是显示适配器时,该功能是否要启动与该功能的各项参数,是被记录到主板上头的一个称为CMOS的芯片上,这个芯片需要借着额外的电源来发挥记录功能,这也是为什么你的主板上面会有一颗电池的缘故。
那CMOS内的数据如何读取与更新呢?还记得你的计算机在开机的时候可以按下[Del]按键来进入一个名为BIOS的画面吧? BIOS(Basic Input Output System)是一套程序, 这套程序是写死到主板上面的一个内存芯片中,这个内存芯片 在没有通电时也能够将数据记录下来,那就是只读存储器(Read Only Memory, ROM)。ROM 是一种非挥发性的内存。另外,BIOS对于个人计算机来说是非常重要的,因为他是系统在开机的时候首先会去读取的--个小程序喔!
BIOS对计算机系统来讲是非常重要的,因为他掌握了系统硬件的详细信息与开机设备的选择等等。 但是计算机发展的速度太快了,因此 BIOS程序代码也可能需要作适度的修改才行,所以你才会在很多主板官网找到BIOS的更新程序啊!但是BIOS原本使用的是无法改写的ROM,因此根本无法修正BIOS程序代码!为此,现在的BIOS通常是写入类似闪存(flash) 或EEPROM中。
强调一下: CMOS 主要的功能为记录主板.上面的重要参数,包括系统时间、CPU电压与频率、各项设备的IO地址与IRQ等,由于这些数据的记录要花费电力,因此主板上面才有电池。BIOS 为写入到主板上某-块flash 或EEPROM的程序,他可以在开机的时候执行,以加载CMOS当中的参数,并尝试呼叫储存装置中 的开机程序,进一步进入操作系统当中。BIOS程序也可以修改CMOS中的数据,每种主板呼叫BIOS设定程序的按键都不同,一般桌面计算机常见的是使用[del]按键进入BIOS设定画面。
5、显示适配器
显示适配器又称为VGA(Video Graphics Array),他对于图形影像的显示扮演相当关键的角色。一般对于图形影像的显示重点在于分辨率与颜色深度,因为每个图像显示的颜色会占用掉内存,因此显示适配器上面会有一个内存的容量,这个显示适配器内存容量将会影响到你的屏幕分辨率与颜色深度的喔!
除了显示适配器内存之外,现在由于三度空间游戏(3D game)与一些3D动画的流行,因此显示适配器的[运算能力」越来越重要。一些3D的运算早期是交给CPU去运作的,但是CPU并非完全针对这些3D来进行设计的,而且CPU平时已经非常忙碌了呢!所以后 来显示适配器厂商直接在显示适配器上面嵌入一个3D加速的芯片,这就是所谓的GPU称谓的由来。
显示适配器主要也是透过CPU的控制芯片来与CPU、主存储器等沟通。如前面提到的,对于图形影像(尤其是3D游戏)来说,显示适配器也是需要高速运算的一个组件,所以数据的传输也是越快越好! 因此显示适配器的规格由早期的PCI导向AGP,近期 AGP又被PCI-Express规格所取代了。如前面华硕主板图示当中看到的就是PCI-Express的插槽。这些插槽最大的差异就是在数据传输的带宽了!
注: PCI-Express(peripheral component interconnect express)是一种高速串行计算机扩展总线标准。
如果你的主机是用来打3D游戏的,那么显示适配器的选购是非常重要喔!如果你的主机是用来做为网络服务器的,那么 简单的入门级显示适配器对你的主机来说就非常够用了!因为网络服务器很少用到3D与图形影像功能。

除了显示适配器与主板的连接接口需要知道外,那么显示适配器是透过什么与计算机屏幕(或电视)连接的呢?
目前主要的连接接口有:
①D-Sub (VGA端子):
D-Sub (VGA端子):为较早之前的连接接口,主要为15针的连接,为模拟讯号的传输。

②DVI:
共有四种以上的接头,市面上比较常见的为仅提供数字讯号的DVI-D, 以及整合数字与模拟讯号的DVI-I 两种。DVI常见于液晶屏幕的链接。


③HDMI:
相对于D-sub 与DVI仅能传送影像数据,HDMI可以同时传送影像与声音,因此被广泛的使用于电视屏幕中!计算机屏幕目前也经常都有支持HDMI格式!

④Display port:
与HDMI相似的,可以同时传输声音与影像。不过这种界面目前还是比较少屏幕的支持!

6、磁盘
(1)磁盘上的数据
由于磁盘盘是圆的,并且透过机器手臂去读写数据,磁盘盘要转动才能够让机器手臂读写。因此,通常数据写入当然就是以圆圈转圈的方式读写!所以,当初设计就是在类似磁盘盘同心圆上面切出一个一个的小区块,这些小区块整合成-一个圆形,让机器手臂上的读写头去存取。这个小区块就是磁盘的最小物理储存单位,称之为扇区(sector), 那同一个同心圆的扇区组合成的圆就是所谓的磁道 (track)。由于磁盘里面可能会有多个磁盘盘,因此在所有磁盘盘上面的同一个磁道可以组合成所谓 的磁柱(cylinder)。
可参考: 硬盘基本知识(磁头、磁道、扇区、柱面)

我们知道同心圆外圈的圆比较大,占用的面积比内圈多啊!所以,为了善用这些空间,因此外围的圆会具有更多的扇区!此外,当磁盘盘转1圈时, 外圈的扇区数量比较多,因此如果数据写入在外圈,转1圈能够读写的数据量当然比内圈还要多!因此通常数据的读写会由外圈开始往内写的喔!这是默认值啊!
另外,原本硬盘的扇区都是设计成512byte的容量,但因为近期以来硬盘的容量越来越大,为了减少数据量的拆解,所以新的高容量硬盘已经有4Kbyte 的扇区设计!购买的时候 也需要注意一下。也因为这个扇区的设计不同了,因此在磁盘的分区方面,目前有旧式的MSDOS兼容模式,以及较新的GPT模式喔!在较新的GPT模式下,磁盘的分区通常使用扇区号码来设计,跟过去旧的
MSDOS是透过磁柱号码来分区的情况不同喔!
(2)传输界面
为了要提升磁盘的传输速度,磁盘与主板的连接界面也经过多次的改版,因此有许多不同的界面喔!传统磁盘界面包括有SATA, SAS, IDE与SCSI等等。若考虑外接式磁盘,那就还包括了USB, eSATA等等界面喔!不过目前IDE已经被SATA取代,而SCSI则被SAS取代,因此我们底下,将仅涉及SATA, USB与SAS界面而已。
注:SATA硬盘的连接接口插槽。了解即可。
(3)常用计算单位
进位制

