计算机硬件和逻辑软件有什么区别(深入理解硬件和软件的逻辑等价性)

一 逻辑电路的软连接

芯片是由金属连线和基于半导体材料的晶体管组成的。晶体管开关的连线组合能完成一定功能(如加法机、记忆电路),就是硬件,而能完成一定功能的软件的指令序列(01序列)相当于晶体管开关的重新连线,因而具备了新的功能;

复杂的逻辑功能单元都是由简单的逻辑电路搭建而成的,硬件就是逻辑电路的硬连接,软件就是这些逻辑电路的软连接(软件的指令序列也就是01序列而已)。

二 计算机系统的分层组织结构

计算机硬件和逻辑软件有什么区别(深入理解硬件和软件的逻辑等价性)(1)

1 硬联逻辑级:第零级是硬联逻辑级,这是计算机的内核,由门,触发器等逻辑电路组成。

2 微程序级:第一级是微程序级。这级的机器语言是微指令集,程序员用微指令编写的微程序,一般是直接由硬件执行的。

3 传统机器级:第二级是传统机器级,这级的机器语言是该机的指令集,程序员用机器指令编写的程序可以由微程序进行解释。

三 硬件实现和软件实现

随着大规模集成电路的发展和软件硬化的趋势,计算机系统的软、硬件界限已经变得模糊了。任何操作可以由软件来实现,也可由硬件来实现;任何指令的执行可以由硬件来完成,同样也可以由软件来完成。互相转化的媒介是硬件和软件的逻辑等价性。

因为现在任何操作,任何指令都既可以用软件来实现,又可以用硬件来完成,软件和硬件的界限已经很模糊了。通过软件的固化(像做成芯片等),可以将软件和硬件紧密联系在一起。

软件是可以转化为硬件的,首先是在操作系统之上的应用软件,这里主要指编译软件,它将高级语言或者汇编语言编译、解释为目标程序,也就是我们所说的机器码,然后机器码被分解为微程序,微程序再分解为微指令,而微指令就是一段定长的二进制数字,再由数字逻辑里的知识被硬件所利用。

比如常见的“显卡3D加速”,既可以用软件实现,又可以用硬件实现。

一般来说,对于某一功能采用硬件方案还是软件方案,取决于器件价格、速度、可靠性、存储容量、变更周期等因素,有下面的区别:

  • 硬件实现:优点:速度快,功耗低,性能指标高;缺点:不灵活不易升级,需要硬件成本。

  • 软件实现:优点:灵活多边,易于升级,不需要硬件成本;缺点:性能指标较弱,功耗较高。

理论上,所有软件功能都可以用硬件实现(虽然不一定具备经济意义)。

就目前而言,一些计算机的特点是,把原来明显地在一般机器级通过编制程序实现的操作,如整数乘除法指令、浮点运算指令、处理字符串指令等等,改为直接由硬件完成。

四 计算机系统层次结构中的逐步硬化或固化

把计算机系统按功能分为多级层次结构,就是有利于正确理解计算机系统的工作过程,明确软件,硬件在计算机系统中的地位和作用。

总之,随着大规模集成电路和计算机系统结构的发展,实体硬件机的功能范围不断在扩大。计算机系统层次结构中由3级向5级将逐步硬化或固化,即其功能将逐步由硬件或固件来实现,现已出现了专用的操作系统机器、高级语言机器。第一级和第二级的边界范围,要向第三级乃至更高级扩展。这是因为容量大、价格低、体积小、可以改写的只读存储器提供了软件固化的良好物质手段。现在已经可以把许多复杂的、常用的程序制作成所谓固件。就它的功能来说,是软件;但从形态来说,又是硬件。其次,目前在一片硅单晶芯片上制作复杂的逻辑电路已经是实际可行的,这就为扩大指令的功能提供了物质基础,因此本来通过软件手段来实现的某种功能,现在可以通过硬件来直接解释执行。进一步的发展,就是设计所谓面向高级语言的计算机。这样的计算机,可以通过硬件直接解释执行高级语言的语句而不需要先经过编译程序的处理。传统的软件部分,今后完全有可能“固化”甚至“硬化”。

五 硬件与软件的关系

硬件和软件是一个完整的计算机系统互相依存的两大部分,它们的关系主要体现在以下几个方面。

⑴ 硬件和软件互相依存

硬件是软件赖以工作的物质基础,软件的正常工作是硬件发挥作用的唯一途径。计算机系统必须要配备完善的软件系统才能正常工作,且充分发挥其硬件的各种功能。

⑵ 硬件和软件无严格界线

随着计算机技术的发展,在许多情况下,计算机的某些功能既可以由硬件实现,也可以由软件来实现。因此,硬件与软件在一定意义上说没有绝对严格的界面。

⑶ 硬件和软件协同发展

计算机软件随硬件技术的迅速发展而发展,而软件的不断发展与完善又促进硬件的更新,两者密切地交织发展,缺一不可。

很多软件可以用硬件实现,同样,硬件的功能也可以用软件编写。从某种意义上说,他们都是在处理信息。打个比方,mp3既可以用软件的播放器播放,也可以用专用的音频解码芯片解码实现播放。

附注1 :固件

固件(Firmware)就是写入EROM(可擦写只读存储器)或EEPROM(电可擦可编程只读存储器)中的程序。如在设备内部保存的设备“驱动程序”,通过固件,操作系统才能按照标准的设备驱动实现特定机器的运行动作,比如光驱、刻录机等都有内部固件。

固件担任着一个系统最基础最底层工作的软件。而在硬件设备中,固件就是硬件设备的灵魂,因为一些硬件设备除了固件以外没有其它软件组成,因此固件也就决定着硬件设备的功能及性能。

附注2:单片机烧录原理

单片机(需要集成程序存储器)的存储器内部是有很多很多的MOS管组成,MOS管的栅极的电压充了电是很难释放的(最高保存10年以上),也就是MOS管的栅极的电压是具有记忆功能的。

烧录时,程序是以二进制(0低电平和1高电平)的形式,对芯片的内部相应MOS管栅极进行充电或放电,形成数据保存。例如:一窜00000001数据送人存储器,MOS栅极进行充放电保存,前面0000000七个对对应的MOS管放电以低电平形式保存,最后一个1,是以给MOS管栅极进行充电形式保存。这样就八个MOS管就保存00000001的这窜数据。

读取时,MOS管栅极放电输出为0,充电输出为1,将一连串的数据读取输出。

单片机工作时首先是读取程序存储器的数据,然后是完全按照程序数据来工作的;当给单片机内存储器烧录不同的程序,单片机工作就不相同。(每个单片机厂家都有专门的烧制软件!)

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页