当前位置:文档之家› 硬件的使用与驱动开发入门

硬件的使用与驱动开发入门

硬件的简单使用与驱动开发入门——部分内容来自《linux设备驱动开发详解》与韦东山的《嵌入式Linux应用开发完全手册》

Linux API Developing Department

lishiwen4@https://www.doczj.com/doc/ba13031169.html, 李仕文

武汉理工大学开源技术协会

https://www.doczj.com/doc/ba13031169.html,

一.GPIO硬件介绍:

GPIO (General Purpose I/O Ports通用输入/输出)或总线扩展器利用工业标准I2C、SMBus?或SPI?接口简化了I/O口的扩展。当微控制器或芯片组没有足够的I/O端口,或当系统需要采用远端串行通信或控制时,GPIO产品能够提供额外的控制和监视功能。

通俗地讲,就是有一些引脚,可以通过它们输出高/低电平,或者,读入引脚状态——是高电平还是低电平。

GPIO的操作是所有硬件操作的基础,由此扩展开来可以了解所有硬件的操作,这是底层开发人员必须掌握的。

通过寄存器来操作GPIO引脚:

既然一个引脚可以用来输入,输出或其他的特殊功能,那么一定有寄存器来选择这些功能;对于输入,一定可以通过读取某个寄存器来确定引脚的电平是低还是高;对于输出,一定可以通过写入某个寄存器来让这个引脚输出高电平或者低电平。对于其他的特殊功能,则有另外的寄存器来控制它。

对于这几组GPIO引脚,他们的寄存器是相似的,GPxCON用来选择寄存器引脚功能,GPxDATA用于读写引脚数据;GPxUP确定是否使用内部上拉电阻。X为 A,B,C,…… H/J没有GPAUP寄存器。

GPxCON 寄存器:

用于配置引脚功能(Configure), PORT A 与 PORTB~PORT H/J 在功能选择上有所不同,GAPACON 中每一位对应一根引脚,共23 个引脚。当某位被设为 0 时候,其为输出引脚。此时我们可以再GPADAT 中相应的写入 1或者 0 来让此引脚输出高电平或者低电平;当某一位为1时,相应引脚为地址线或用于地址控制,此时,GPADATA无用,一般而言 GPACON 通常被设为全1,以便访问外部存储器件。

PORT B ~ PORT H/J 在寄存器操作方面完全相同。GPxCON中每两位控制一根引脚, 00 表示输入,01表示输出,10表示特殊功能,11保留不用。

GPxDAT 寄存器: GPxDAT用于读写引脚,当引脚被设为输入时候,读此寄存器可知道相应引脚的电平状态高还是低,当引脚被设为输出时候,写此寄存器的位,可令引脚输出高电平还是低电平。

GpxUP寄存器: GpxUP寄存器某位为1的时候,相应管脚没有上拉电阻;为 0 时候相应管脚有上拉电阻。 上拉电阻作用在于,当GPIO 引脚处于第三种状态时候,既不是输出高电平,也不是输出低电平。而是呈现高阻态,相当于没有接芯片。它的电平状态由上下拉电阻决定。

上拉电阻,下拉电阻的作用在于GPIO的引脚处于第三态(既不是输出低电平,也不是输出高电平,而是呈高阻态,即相当于没接芯片)时,它的电平状态由上拉电阻,下拉电阻确定。

怎样通过软件来访问硬件:

1.访问单个引脚:

单个引脚的操作无外乎3种:输出高低电平,检测引脚状态,中断。对某个脚的操作一般通过读,写寄存起来完成。

那么,如何访问这些寄存器呢?通过软件,读写他们的地址。比GPBCON,GPBDAT寄存器的地址为 0x56000010, 0x56000014;那么可以用以下的指令让GPB5输出低电平。

#define GPBCON (*(volatile unsigned long *) 0x56000010)

#define GPBDAT (*(volatile unsigned long *)0x56000014)

#define GPB5_out ( 1 << (5 * 2))

GPBCON = GPB5_out;//GPB5引脚设为输出

GPBDAT = ~( 1 << 5); //GPB5输出低电平

补充:对于具体的硬件,寄存器的地址可以通过查硬件手册得到,这些都是固定的。

在计算机中,给I/O接口电路编址的方式有两种:一是采用各自独立的编址方式,采用不同的指令访问;另一种是采用统一编址把I/O接口中的寄存器单座内存当中的单元来对待,(这就是内存映射 I/O)采用统一指令来访问

当CPU发出的地址信号有效时,nGCS0有效(为低电平),NOR Flash被选中, CPU发出的地址信号被传到NOR Flash;进行读操作时,nWE信号为高,数据从NOR Flash到CPU ;进行写操作时,nWE信号为低;数据从CPU 到 NOR Flash

例如:以下代码对NOR Flash 进行读操作

unsigned short * pwAddr= ( unsigned short *)0x2; unsigned short data;

data = * pwAddr;

CPU发出的度地址为0x2;地址总ADDR1~ADDR20的信号都是1,0,0,…… NOR Flash收到的地址为 0x1;

NOR Flash见此地址上的16为数据取出,通过 D0 ~ D15 发给CPU

操作硬件就是读/写寄存器

设备驱动程序的作用:

任何一个计算机系统的运行都是系统中软硬件协作的结果,没有硬件的软件是空中楼阁,没有软件的硬件则是一堆废铁,硬件是底层基础,是所有软件得以运行的平台,代码最终会落实为硬件上的组合逻辑与时序逻辑;软件则实现了具体应用,它按照各种不同的业务需求设计。硬件比较固定,软件比较灵活。可以说计算机系统的硬件和软件互相成就了对方。

但是,在软硬件自己按同样存在着悖论,那就是软件和硬件不应该互相地渗透到对方的领地。为了尽可能快速的完成设计,应用软件工程师不想也不必关心硬件,而硬件工程师也难有闲暇来顾及软件。例如,应用程序工程师在调用套接字发送和接收数据包的时候,他不必关心网卡上的终端,寄存器,存储空间,I/O端口,片选以及其任何硬件词汇;在使用printf()函数输出信息的时候,她不用知道底层究竟怎样把相应的信息输出到屏幕或串口。

也就是说,应用软件工程师需要看到一个没有硬件的纯粹的软件世界,硬件必须被透明的呈现给他们。谁来实现硬件对应用软件工程师的隐形?这个艰巨的任务就落在驱动工程师的头上。

对设备驱动程序的通俗解释就是“驱使硬件设备行动”。它按照硬件设备的具体工作形式读写设备寄存器,完成设备轮询,中断处理,DMA通信,进行物理内存向虚拟内存的映射,最终使得通信设备能够收发数据,使显示设备能够显示文字和画面,是存储设备能存储文件和数据。

由此可见,驱动设备充当了软件和硬件之间的纽带,它使得应用软件只需要调用系统软件的应用程序接口(API)就可以让硬件完成相应的工作。

无操作系统时的设备驱动:

并不是任何一个计算机系统都需要运行操作系统,在许多情况下操作系统不是必需的,对于功能比较单一,控制并不复杂的系统,比如,公交车的刷卡系统,电冰箱,微波炉,简单的手机和小灵通等,并不需要多任务调度,文件系统,内存管理等复杂的功能,用单任务架构完全可以很好的完成工作。一个无限循环中夹杂着对设备中断的检测或者对设备的轮询是这种系统的典型架构。

单任务软件典型架构

void main(void)

{

………… // 数据定义

while(1)

{

if( serialINT == 1)

{

………… //串口接收处理函数 }

…………

}

}

在这样的系统里,虽然不存在操作系统,但是设备驱动必须存在,一般情况下,对每一种设备都会定义为一个软件模块,其他模块需要使用这个设备的时候,只需要包含设备驱动的头文件,然后调用外部的接口函数即可。

无操作系统时的LED驱动

#define reg_gpio_ctrl *(volatile int*)(ToVirtual(GPIO_REG_CTRL)) #define reg_gpio_data *(volatile int*)(ToVirtual(GPIO_REG_DATA))

void LED_init(void) //LED初始化函数

{

reg_gpio_ctrl |= (1 << n); //设置GPIO为输出

}

void LED_on(void)//LED灯点亮{

reg_gpio_data |= (1 << n); //在GPIO上输出高电平}

void LED_off(void)

{

reg_gpio_data &= ~(1 << n); //在GPIO上输出低电平}

windows驱动开发和调试环境搭建

Windows驱动开发和环境搭建 【文章标题】: Windows驱动开发和调试的环境设置 【文章作者】: haikerenwu 【使用工具】: VC6.0,VMware6.0.3,Windbg 【电脑配置】: 惠普笔记本xp sp3 (一)VMWare安装篇 VMWare的安装一路Next即可,关于其序列号,百度一下就能找到,虚拟机安装完成之后,需要安装操作系统,我在虚拟机中安装的是windows xp sp2系统。 点击“文件”----“新建”----“虚拟机” 进入新建虚拟机的向导,配置虚拟系统参数

选择虚拟系统文件的兼容格式(新手推荐选择默认选项) 按照默认设置继续点击下一步,选择好您需要的操作系统,此处我选择的是Windows XP Prefessional。 设置虚拟机名称和虚拟操作系统安装路径,我单独空出来一个F 盘,将虚拟机和虚拟操作系统全部装在该盘。

配置网络模式(推荐选择NA T,一般主机不用做任何的设置虚拟机就可以利用主机上网)。 配置虚拟磁盘的容量。在这里可以直接单击完成,来完成基本操作设置,磁盘默认空间是8GB,用户可以根据自己的实际使用情况来调整大小,也可以自定义分区。

操作完成之后,在“VM”菜单下有个“setting。。。”菜单,点击此菜单,在CD-ROM中选择合适的选项,我使用的是Use ISO image 选项,将我的xp sp2操作系统的ISO映像路径设置好,安装操作系统。点击ok之后,启动虚拟机,即开始安装操作系统,安装过程跟普通装机过程相同。安装完成之后,启动操作系统,然后在VM菜单下点击“Install VMWare Tools”,把虚拟操作系统的驱动装好。 (二)VMWare设置篇

硬件工程师面试题集(含答案-很全)

硬件工程师面试题集 (DSP,嵌入式系统,电子线路,通讯,微电子,半导体) 1、下面是一些基本的数字电路知识问题,请简要回答之。 (1) 什么是Setup和Hold 时间? 答:Setup/Hold Time 用于测试芯片对输入信号和时钟信号之间的时间要求。建立时间(Setup Time)是指触发器的时钟信号上升沿到来以前,数据能够保持稳定不变的时间。输入数据信号应提前时钟上升沿(如上升沿有效)T 时间到达芯片,这个T就是建立时间通常所说的SetupTime。如不满足Setup Time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿到来时,数据才能被打入触发器。保持时间(Hold Time)是指触发器的时钟信号上升沿到来以后,数据保持稳定不变的时间。如果Hold Time 不够,数据同样不能被打入触发器。 (2) 什么是竞争与冒险现象?怎样判断?如何消除? 答:在组合逻辑电路中,由于门电路的输入信号经过的通路不尽相同,所产生的延时也就会不同,从而导致到达该门的时间不一致,我们把这种现象叫做竞争。由于竞争而在电路输出端可能产生尖峰脉冲或毛刺的现象叫冒险。如果布尔式中有相反的信号则可能产生竞争和冒险现象。解决方法:一是添加布尔式的消去项,二是在芯片外部加电容。 (3) 请画出用D 触发器实现2 倍分频的逻辑电路 答:把D 触发器的输出端加非门接到D 端即可,如下图所示: (4) 什么是"线与"逻辑,要实现它,在硬件特性上有什么具体要求? 答:线与逻辑是两个或多个输出信号相连可以实现与的功能。在硬件上,要用OC 门来实现(漏极或者集电极开路),为了防止因灌电流过大而烧坏OC 门,应在OC 门输出端接一上拉电阻(线或则是下拉电阻)。 (5) 什么是同步逻辑和异步逻辑?同步电路与异步电路有何区别? 答:同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系.电路设计可分类为同步电路设计和异步电路设计。同步电路利用时钟脉冲使其子系统同步运作,而异步电路不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号使之同步。异步电路具有下列优点:无时钟歪斜问题、低电源消耗、平均效能而非最差效能、模块性、可组合和可复用性。 (7) 你知道那些常用逻辑电平?TTL 与COMS 电平可以直接互连吗? 答:常用的电平标准,低速的有RS232、RS485、RS422、TTL、CMOS、LVTTL、LVCMOS、ECL、ECL、LVPECL 等,高速的有LVDS、GTL、PGTL、CML、HSTL、SSTL 等。 一般说来,CMOS 电平比TTL 电平有着更高的噪声容限。如果不考虑速度和性能,一般TTL 与CMOS 器件可以互换。但是需要注意有时候负载效应可能引起电路工作不正常,因为有些TTL 电路需要下一级的输入阻抗作为负载才能正常工作。 (6) 请画出微机接口电路中,典型的输入设备与微机接口逻辑示意图(数据接口、控制接口、锁存器/缓冲器)

Windows驱动开发培训

Windows驱动开发培训 培训流程: 一、基础知识 在开始驱动开发之前,您应该知道操作系统原理以及驱动程序是如何在操作系统中进行工作的,了解这些基本原理将有助于您做出正确的设计决策并简化您的开发过程。 1、了解Windows操作系统构造\\ 可以链接进去 2、安装WDK,参考相关文档,熟悉WDK的内容\\ 可以链接进去 二、Windows驱动开发\\ 可以链接进去 一、基础知识 在开始驱动开发之前,您应该知道操作系统原理以及驱动程序是如何在操作系统中进行工作的,了解这些基本原理将有助于您做出正确的设计决策并简化您的开发过程。 1、了解Windows操作系统构造 (1)培训目标 深入了解Windows操作系统的系统结构以及工作原理 (2)培训内容 阅读书籍《深入解析Windows操作系统》的第3、4、6、7、9章,重点关注第九章“I/O系统” (3)培训任务 ①掌握Windows操作系统的系统结构 ②理解ISR、IRP、IRQL、DCP等概念的含义 ③了解注册表的用法,掌握注册表数据的查看和修改方法 ④了解进程和线程的内部机理以及线程的调度策略 ⑤了解I/O系统的内容,理解I/O请求以及I/O处理过程 注:以上相关内容,请在一周内完成。

2、安装WDK,参考相关文档,熟悉WDK的内容 (1)培训目标 了解WDK的安装过程,熟悉WDK的编译环境,掌握如何使用WDK的相关帮助文档;了解WDM驱动程序的基本结构 (2)培训内容 ①.阅读文档\\10.151.131.12\book\windows\MSWDM.chm,掌握WDM驱动程序的基本结构以及基本的编程技术。 ②.参考WDK的帮助文档:WDK documentation ,了解WDK的基本内容 (3)培训任务 ①理解分层驱动结构的含义,掌握设备和驱动程序的层次结构 ②理解“驱动对象”和“设备对象”的概念 ③理解2个基本例程:DriverEntry 和addDevice ④了解IRP的结构以及IRP处理的流程 ⑤初步了解I/O的控制操作 注:以上相关内容,请在一周内完成。 二、Windows驱动开发 学习如何基于WDK进行驱动程序的开发 1、培训目标 (1)学会根据WDK开发一个基本的Windows驱动程序和测试程序 (2)学会利用不同的IOCTL方式在内核模式和用户模式之间进行通讯 (3)学会如何在内核模式下和用户模式下访问注册表 (4)利用WinDbg跟踪程序,学会使用WinDbg进行调试 2、培训内容 (1)阅读\src\general\ioctl中的示例代码 (2)build并运行应用程序和驱动程序

硬件工程师必用的20个电子线路图

这20个电子线路图,硬件工程师一定用得上! 电子技术、无线电维修及SMT电子制造工艺技术绝不是一门容易学好、短时间内就能够掌握的学科。这门学科所涉及的方方面面很多,各方面又相互联系,作为初学者,首先要在整体上了解、初步掌握它。 无论是无线电爱好者还是维修技术人员,你能够说出电路板上那些小元件叫做什么,又有什么作用吗?如果想成为元件(芯片)级高手的话,掌握一些相关的电子知识是必不可少的。 普及DIP与SMT电子基础知识,拓宽思路交流,知识的积累是基础的基础,基础和基本功扎实了才能奠定攀登高峰阶梯!这就是基本功。 电子技术的历史背景: 早在两千多年前,人们就发现了电现象和磁现象。我国早在战国时期(公元前475一211年)就发明了司南。而人类对电和磁的真正认识和广泛应用、迄今还只有一百多年历史。在第一次产业革命浪潮的推动下,许多科学家对电和磁现象进行了深入细致的研究,从而取得了重大进展。人们发现带电的物体同性相斥、异性相吸,与磁学现象有类似之处。 1785年,法国物理学家库仑在总结前人对电磁现象认识的基础上,提出了后人所称的“库仑定律”,使电学与磁学现象得到了统一。 1800年,意大利物理学家伏特研制出化学电池,用人工办法获得了连续电池,为后人对电和磁关系的研究创造了首要条件。

1822年,英国的法拉第在前人所做大量工作的基础上,提出了电磁感应定律,证明了“磁”能够产生“电”,这就为发电机和电动机的原理奠定了基础。 1837年美国画家莫尔斯在前人的基础上设计出比较实用的、用电码传送信息的电报机,之后,又在华盛顿与巴尔的摩城之间建立了世界上第一条电报线路。1876 年,美国的贝尔发明了电话,实现了人类最早的模拟通信。英国的麦克斯韦在总结前人工作基础上,提出了一套完整的“电磁理论”,表现为四个微分方程。这那就后人所称的“麦克斯韦方程组”.麦克斯韦得出结论:运动着的电荷能产生电磁辐射,形成逐渐向外传播的、看不见的电磁波。他虽然并未提出“无线电”这个名词,但他的电磁理论却已经告诉人们,“电”是能够“无线”传播的。 对模拟电路的掌握分为三个层次: 初级层次 熟练记住这二十个电路,清楚这二十个电路的作用。只要是电子爱好者,只要是学习自动化、电子等电控类专业的人士都应该且能够记住这二十个基本模拟电路。 中级层次 能分析这二十个电路中的关键元器件的作用,每个元器件出现故障时电路的功能受到什么影响,测量时参数的变化规律,掌握对故障元器件的处理方法;定性分析电路信号的流向,相位变化;定性分析信号波形的变化过程;定性了解电路输入输出阻抗的大小,信号与阻抗的关系。有了这些电路知识,您极有可能成长为电子产品和工业控制设备的出色的维修维护技师。

Windows驱动开发入门

接触windows驱动开发有一个月了,感觉Windows驱动编程并不像传说中的那么神秘。为了更好地为以后的学习打下基础,记录下来这些学习心得,也为像跟我一样致力于驱动开发却苦于没有门路的菜鸟朋友们抛个砖,引个玉。 我的开发环境:Windows xp 主机+ VMW ARE虚拟机(windows 2003 server系统)。编译环境:WinDDK6001.18002。代码编辑工具:SourceInsight。IDE:VS2005/VC6.0。调试工具:WinDBG,DbgView.exe, SRVINSTW.EXE 上面所有工具均来自互联网。 对于初学者,DbgView.exe和SRVINSTW.EXE是非常简单有用的两个工具,一定要装上。前者用于查看日志信息,后者用于加载驱动。 下面从最简单的helloworld说起吧。Follow me。 驱动程序的入口函数叫做DriverEntry(PDRIVER_OBJECT pDriverObj,PUNICODE_STRING pRegisgryString)。两个参数,一个是驱动对象,代表该驱动程序;另一个跟注册表相关,是驱动程序在注册表中的服务名,暂时不用管它。DriverEntry 类似于C语言中的main函数。它跟main的差别就是,main完全按照顺序调用的方法执行,所有东西都按照程序员预先设定的顺序依次发生;而DriverEntry则有它自己的规则,程序员只需要填写各个子例程,至于何时调用,谁先调,由操作系统决定。我想这主要是因为驱动偏底层,而底层与硬件打交道,硬件很多都是通过中断来与操作系统通信,中断的话就比较随机了。但到了上层应用程序,我们是看不到中断的影子的。说到中断,驱动程序中可以人为添加软中断,__asm int 3或者Int_3();前者是32位操作系统用的,后者是64位用的。64位驱动不允许内嵌汇编。下面是我的一个helloworld的源码:

硬件工程师常用知识2

模电部分(基本概念和知识总揽) 1、基本放大电路种类(电压放大器,电流放大器,互导放大器和互阻放大器),优缺点,特别是广泛采用差分结构的原因。 2、负反馈种类(电压并联反馈,电流串联反馈,电压串联反馈和电流并联反馈);负反馈的优点(降低放大器的增益灵敏度,改变输入电阻和输出电阻,改善放大器的线性和非线性失真,有效地扩展放大器的通频带,自动调节作用) 3、基尔霍夫定理的内容是什么? 基尔霍夫定律包括电流定律和电压定律。 电流定律:在集总电路中,任何时刻,对任一节点,所有流出节点的支路电流代数和恒等于零。电压定律:在集总电路中,任何时刻,沿任一回路,所有支路电压的代数和恒等于零。 4、描述反馈电路的概念,列举他们的应用? 反馈,就是在电子系统中,把输出回路中的电量输入到输入回路中去。反馈的类型有:电压串联负反馈、电流串联负反馈、电压并联负反馈、电流并联负反馈。 负反馈的优点:降低放大器的增益灵敏度,改变输入电阻和输出电阻,改善放大器的线性和非线性失真,有效地扩展放大器的通频带,自动调节作用。 电压(流)负反馈的特点:电路的输出电压(流)趋向于维持恒定。

5、有源滤波器和无源滤波器的区别? 无源滤波器:这种电路主要有无源元件R、L和C组成 有源滤波器:集成运放和R、C组成,具有不用电感、体积小、重量轻等优点。 集成运放的开环电压增益和输入阻抗均很高,输出电阻小,构成有源滤波电路后还具有一定的电压放大和缓冲作用。但集成运放带宽有限,所以目前的有源滤波电路的工作频率难以做得很高。 6、基本放大电路的种类及优缺点,广泛采用差分结构的原因。 答:基本放大电路按其接法的不同可以分为共发射极放大电路、共基极放大电路和共集电极放大电路,简称共基、共射、共集放大电路。共射放大电路既能放大电流又能放大电压,输入电阻在三种电路中居中,输出电阻较大,频带较窄。常做为低频电压放大电路的单元电路。共基放大电路只能放大电压不能放大电流,输入电阻小,电压放大倍数和输出电阻与共射放大电路相当,频率特性是三种接法中最好的电路。常用于宽频带放大电路。 共集放大电路只能放大电流不能放大电压,是三种接法中输入电阻最大、输出电阻最小的电路,并具有电压跟随的特点。常用于电压放大电路的输入级和输出级,在功率放大电路中也常采用射极输出的形式。 广泛采用差分结构的原因是差分结构可以抑制温度漂移现象。 ?7、二极管主要用于限幅,整流,钳位. ?判断二极管是否正向导通: 1.先假设二极管截止,求其阳极和阴极电位; 2.若阳极阴极电位差>UD ,则其正向导通; 3.若电路有多个二极管,阳极和阴极电位差最大的二极管优先导通;其导通后,其阳极阴极电位差被钳制在正向导通电压(0.7V 或0.3V );再判断其它二极管.

硬件工程师培训教程二

硬件工程师培训教程(二) 第二节计算机的体系结构 一台计算机由硬件和软件两大部分组成。硬件是组成计算机系统的物理实体,是看得见摸得着的部分。从大的方面来分,硬件包括(——中央处理器)、存储器和输入输出设备几个部分。 负责指令的执行,存储器负责存放信息(类似大脑的记忆细胞),输入输出设备则负责信息的采集与输出(类似人的眼睛和手)。具体设备如我们平常所见到的内存条、显卡、键盘、鼠标、显示器和机箱等。软件则是依赖于硬件执行的程序或程序的集合。这是看不见也摸不着的部分。 一、(冯. 诺依曼)体系结构 体系结构是以数学家的名字命名的,他在世纪年代参与设计了第一台数字计算机。体系结构的特点如下: ?一台计算机由运算器、控制器、存储器、输入和输出 设备大部分组成。 ?采用存储程序工作原理,实现了自动连续运算。存储程序工作原理即把计算过程描述为由许多条命令按一定顺序组成的程序,然后把程序和所需的数据一起输入计算机存储器中保存起来,工作时控制器执行程序,控制计算机自动连续进行运算。体系结构存在的一个突出问题就是,外部数据存取速度和运算速度不平衡,不过可以 通过在 一个系统中使用多个或采用多进程技术等方法来解决

是计算机的运算和控制中心,其作用类似人的大脑。不同的其内部结构不完全相同,一个典型的由运算器、寄存器和控制器组成。个部分相互协调便可以进行分析、判断和计算,并控制计算机各部分协调工作。最新的除包括这些基本功能外,还集成了高速(缓存)等部件。 三、存储器 每台计算机都有个主要的数据存储部件:主存储器、高速寄存器和外部文件存储器。主存储器通常是划分为字(典型的是位或位)或字节(每字含或字节)的线性序列。高速寄存器通常是一个字长的位序列。一个寄存器的内容可能表示数据或主存储器中数据或下一条指令的地址。高速缓存通常位于主存储器和寄存器之间作为从主存储器存取数据的加速器。外部文件存储器包括磁盘、磁带或日益普及的等,通常以记录划分,每个记录是位或字节的序列。 四、输入输出()设备输入设备类似人的眼睛、耳朵和鼻子,负责信息的采集,并提交给处理。具体产品如键盘、鼠标和扫描仪等。输出设备类似人的手,执行大脑()发出的指令,可完成一定的功能,输出计算机的运算结果。具体产品如打印机、显示器和音箱 五、总线微型计算机的体系结构有一个最显著的特征是采用总线结构。总线就像一条公共通路,将所有的设备连接起来,达到相互通信的目的。与并行计算机(各部件间通过专用线路连接)相比,采用总线结构的微型计算机简化了设计、降低了成本、缩小了

操作系统与驱动开发试题

河北科技大学硕士学位研究生 2014——2015学年第1学期 《操作系统与驱动开发》课程期末考试试卷 学院信息学院专业电路与系统姓名程莉学号 2201414007 题号一二三四五六总分 得分 一.单项选择题(每小题1分,共10分) 1.操作系统的 D 管理部分负责对进程进行调度。 A.主存储器 B.控制器 C.运算器 D.处理机 2.分时操作系统通常采用 B 策略为用户服务。 A.可靠性和灵活性 B.时间片轮转 C.时间片加权分配 D.短作业优先 3.很好地解决了“零头”问题的存储管理方法是 A 。 A 页式存储管理 B 段式存储管理 C 多重分区管理 D 可变式分区管理 4.用WAIT、SIGNAL操作管理临界区时,信号量的初值应定义为 B 。 A.-1 B.0 C.1 D.任意值 5.在进程管理中,当 C 时,进程从阻塞状态变为就绪状态。 A.进程被进程调度程序选中 B.等待某一事件 C.等待的事件发生 D.时间片用完 6.某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数 B 。 A.9 B.10 C.11 D.12 7.虚拟存储器管理系统的基础是程序的 B 理论。 A.全局性 B.局部性 C. 动态性 D.虚拟性 8.从用户的角度看,引入文件系统的主要目的是 D A.实现虚拟存储 B.保存系统文档

C.保存用户和系统文档 D.实现对文件的按名存取 9.操作系统中采用多道程序设计技术提高CPU和外部设备的 A A.利用率 B.可靠性 C.稳定性 D.兼容性 10.缓冲技术中缓冲池在 C 中。 A.主存 B. 外存 C. ROM D. 时间片轮转 二.填空(每空0.5分,共15分)。 11.进程存在的唯一标志是PCB 。 12.通常进程实体是由程序块、进程控制块和数据块三部分组成。 13.磁盘访问时间由寻道时间、旋转延迟时间和传输时间组成。 14.作业调度是从后备作业队列中选一些作业,为它们分配资源,并为它们创建进程。 15.文件的物理组织有顺序、链接和索引。 16.若一个进程已经进入临界区,则其它欲要进入临界区的进程必须___等待____。 17.信号量的物理意义是,当信号量值大于零时其值表示可分配资源的个数;当信号 量值小于零时,其绝对值表示等待使用该资源的进程的个数。 18.静态重定位在程序装入时进行; 而动态重定位在程序运行时进行。 19.分区管理中采用“最佳适应”分配算法时,宜把空闲区按长度递增次序登记在空闲 区表中。 20.所谓系统调用,就是用户在程序中调用操作系统所提供的一些子功能。 21.把逻辑地址映射为物理地址的工作称为地址映射。 22.设备管理中采用的数据结构有设备控制表、控制器控制表、通道控制表、 系统设备表等四种。 23.从资源管理(分配)的角度,I/O设备可分为独占设备、共享设备和虚 拟设备三种。 24.设备与控制器之间的接口信号主要包括数据、状态和控制。 25.DMA控制器由三部分组成,分别为主机与DMA控制器的接口、 DMA控制器与块设备的接 口和 I/O控制逻辑。 三.名词解释(每小题2.5分,共10分)。 26.虚拟存储器 答:虚拟存储器是指在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“主存储器”。

Windows驱动程序开发环境配置

Windows驱动程序开发笔记 一、WDK与DDK环境 最新版的WDK 微软已经不提供下载了这里:https://https://www.doczj.com/doc/ba13031169.html,/ 可以下并且这里有好多好东东! 不要走进一个误区:下最新版的就好,虽然最新版是Windows Driver Kit (WDK) 7_0_0,支持windows7,vista 2003 xp等但是它的意思是指在windows7操作系统下安装能编写针对windows xp vista的驱动程序, 但是不能在xp 2003环境下安装Windows Driver Kit (WDK) 7_0_0这个高版本,否则你在build的时候会有好多好多的问题. 上文build指:首先安装好WDK/DDK,然后进入"开始"->"所有程序"->"Windows Driver Kits"->"WDK XXXX.XXXX.X" ->"Windows XP"->"x86 Checked Build Environment"在弹出来的命令行窗口中输入"Build",让它自动生成所需要的库 如果你是要给xp下的开发环境还是老老实实的找针对xp的老版DDK吧,并且xp无WDK 版只有DDK版build自己的demo 有个常见问题: 'jvc' 不是内部或外部命令,也不是可运行的程序。 解决办法:去掉build路径中的空格。 二、下载 WDK 开发包的步骤 1、访问Microsoft Connect Web site站点 2、使用微软 Passport 账户登录站点 3、登录进入之后,点击站点目录链接 4、在左侧的类别列表中选择开发人员工具,在右侧打开的类别:开发人员工具目录中找到Windows Driver Kit (WDK) and Windows Driver Framework (WDF)并添加到您的控制面板中 5、添加该项完毕后,选择您的控制面板,就可以看到新添加进来的项了。 6、点击Windows Driver Kit (WDK) and Windows Driver Framework (WDF),看到下面有下载链接,OK,下载开始。下载后的文件名为: 6.1.6001.18002.081017-1400_wdksp-WDK18002SP_EN_DVD.iso将近600M大小。

硬件工程师面试题集(含答案,很全).docx

硬件工程师面试题集 (DSP,嵌入式系统,电子线路,通讯,微电子,半导体) ---ReaLYamede 1下面是一些基本的数字电路知识问题,请简要回答之。 ⑴什么是SetUP和HOld时间? 答:SetUP/Hold Time用于测试芯片对输入信号和时钟信号之间的时间要求。建立时间(SetUP Time)是指触发器的时钟信号上升沿到来以前,数据能够保持稳定不变的时间。输入数据信 号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间通常所说的SetUPTime。如不满足SetUP Time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿到来时,数据才能被打入触发器。保持时间(Hold Time)是指触发器的时钟信号 上升沿到来以后,数据保持稳定不变的时间。如果Hold Time不够,数据同样不能被打入 触发器。 (2) 什么是竞争与冒险现象?怎样判断?如何消除? 答:在组合逻辑电路中,由于门电路的输入信号经过的通路不尽相同,所产生的延时也就会 不同,从而导致到达该门的时间不一致,我们把这种现象叫做竞争。由于竞争而在电路输出 端可能产生尖峰脉冲或毛刺的现象叫冒险。如果布尔式中有相反的信号则可能产生竞争和冒 险现象。解决方法:一是添加布尔式的消去项,二是在芯片外部加电容。 (3) 请画出用D触发器实现2倍分频的逻辑电路 答:把D触发器的输出端加非门接到D端即可,如下图所示: OIJTPUT CLK (4) 什么是"线与"逻辑,要实现它,在硬件特性上有什么具体要求? 答:线与逻辑是两个或多个输出信号相连可以实现与的功能。在硬件上,要用OC门来实现(漏极或者集电极开路),为了防止因灌电流过大而烧坏OC门,应在OC门输出端接一上拉电阻(线或则是下拉电阻)。 (5) 什么是同步逻辑和异步逻辑?同步电路与异步电路有何区别? 答:同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系.电路设计可分类为同步电路设计和异步电路设计。同步电路利用时钟脉冲使其子系统同步运 作,而异步电路不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号 使之同步。异步电路具有下列优点:无时钟歪斜问题、低电源消耗、平均效能而非最差效 能、模块性、可组合和可复用性。 ⑺你知道那些常用逻辑电平?TTL与CoMS电平可以直接互连吗? 答:常用的电平标准,低速的有RS232、RS485、RS422、TTL、CMOS、LVTTL、LVCMOS、ECL、ECL、LVPECL 等,高速的有LVDS、GTL、PGTL> CML、HSTL、SSTL 等。 一般说来,CMOS电平比TTL电平有着更高的噪声容限。如果不考虑速度和性能,一般TTL与CMOS器件可以互换。但是需要注意有时候负载效应可能引起电路工作不正常,因为有些

硬件工程师培训教程000006)

硬件工程师培训教程(二)第二节计算机的体系结构一台计算机由硬件和软件两大部分组成。硬件是组成计算机系统的物理实体,是看得见摸得着的部分。从大的方面来分,硬件包括CPU(Central Processing Unit ——中央处理器)、存储器和输入/输出设备几个部分。 CPU 负责指令的执行,存储器负责存放信息(类似大脑的记忆细胞),输入/输出设备则负责信息的采集与输出(类似人的眼睛和手)。具体设备如我们平常所见到的内存条、显卡、键盘、鼠标、显示器和机箱等。软件则是依赖于硬件执行的程序或程序的集合。这是看不见也摸不着的部分。 一、V on Neumann (冯. 诺依曼)体系结构 V on Neumann 体系结构是以数学家John V on Neumann 的名字命名的,他在20 世纪40年代参与设计了第一台数字计算机ENIAC 。V on Neumann 体系结构的特点如下: ·一台计算机由运算器、控制器、存储器、输入和输出设备5 大部分组成。 ·采用存储程序工作原理,实现了自动连续运算。存储程序工作原理即把计算过程描述为由许多条命令按一定顺序组成的程序,然后把程序和所需的数据一起输入计算机存储器中保存起来,工作时控制器执行程序,控制计算机自动连续进行运算。V on Neumann 体系结构存在的一个突出问题就是,外部数据存取速度和CPU 运算速度不平衡,不过可以通过在一个系统中使用多个CPU 或采用多进程技术等方法来解决。 二、CPU CPU 是计算机的运算和控制中心,其作用类似人的大脑。不同的CPU 其内部结构不完全相同,一个典型的CPU 由运算器、寄存器和控制器组成。3 个部分相互协调便可以进行分析、判断和计算,并控制计算机各部分协调工作。最新的CPU 除包括这些基本功能外,还集成了高速Cache(缓存)等部件。 三、存储器每台计算机都有3 个主要的数据存储部件:主存储器、高速寄存器和外部文件存储器。主存储器通常是划分为字(典型的是32 位或64 位)或字节(每字含4 或8 字节)的线性序列。高速寄存器通常是一个字长的位序列。一个寄存器的内容可能表示数据或主存储器中数据或下一条指令的地址。高速缓存通常位于主存储器和寄存器之间作为从主存储器存取数据的加速器。外部文件存储器包括磁盘、磁带或日益普及的CD-ROM 等,通常以记录划分,每个记录是位或字节的序列。 四、输入/输出(I/O )设备 输入设备类似人的眼睛、耳朵和鼻子,负责信息的采集,并提交给CPU 处理。具体产品如键盘、鼠标和扫描仪等。输出设备类似人的手,执行大脑(CPU)发出的指令,可完成一定的功能,输出计算机的运算结果。具体产品如打印机、显示器和音箱等。 五、总线微型计算机的体系结构有一个最显著的特征是采用总线结构。总线就像一条公共通路,将所有的设备连接起来,达到相互通信的目的。与并行计算机(各部件间通过专用线路连接)相比,采用总线结构的微型计算机简化了设计、降低了成本、缩小了体积,但在同等配置条件下,性能有所下降。总线又分用于传输数据的数据总线(Data Bus)、传输地址信息的地址总线(Address Bus)和用于传输控制信号、时序信号和状态信息的控制总线(Control Bus)。 六、操作集每台计算机都有一内部基本操作集与机器语言指令相对应。一个典型的操作集包括与内部数据类型相关的基本算术指令(即实数和整数加法、减法、乘法和除法等)、测试数据项性质(如是否为零,是正数或负数等)的指令、对数据项的某一部分进行存取和修改 (如在一个字中存取一个字符,在一条指令中存取操作数的地址等 )的指令、控制输入/输出设备的指令及顺序控制指令(如无条件跳转等)。 七、顺序控制在机器语言程序中下一条要被执行的指令通常是由程序地址寄存器(也称为指令计数器)的内容确定的。为了将控制权转到程序某处,程序员可使用一些操作修改该寄存器的内容。解释器作为一部计算机操作的核心,每次执行的都是简单的循环算法。而对于每次循环,解释器都会从程序地址寄存器取得下一条指令的地址(并增量寄存器的值为下一条指令的地址),从存储器取得指定的指令,对指令进行解码,分解为操作码和一组操作数并取得操作数(如果必要的话),使用操作数作为参数调用指定的操作。基本操作可能修改内存和寄存器中的数据,和输入输出设备进行通讯,通过修改程序地址寄存器的内容改变程序的执行流程。在执行基本操作后,解释器将重复上述循环。 八、数据存取除了操作码,每条机器指令还需要指定操作码所需的操作数。一般操作数可以被存

电子硬件工程师要求

电子硬件工程师要求 基于实际经验与实际项目详细理解并掌握成为合格的硬件工程师的最基本...基本上就可以成为一个合格的电子工程师:第一部分:硬件知识一、数字信... 基于实际经验与实际项目详细理解并掌握成为合格的硬件工程师的最基本知识。 1)基本设计规范 2)CPU基本知识、架构、性能及选型指导 3)MOTOROLA公司的PowerPC系列基本知识、性能详解及选型指导 4)网络处理器(INTEL、MOTOROLA、IBM)的基本知识、架构、性能及选型 5)常用总线的基本知识、性能详解 6)各种存储器的详细性能介绍、设计要点及选型 7)Datacom、Telecom领域常用物理层接口芯片基本知识,性能、设计要点及选型 8)常用器件选型要点与精华 9)FPGA、CPLD、EPLD的详细性能介绍、设计要点及选型指导 10)VHDL和Verilog HDL介绍 11)网络基础 12)国内大型通信设备公司硬件研究开发流程 最流行的EDA工具指导 熟练掌握并使用业界最新、最流行的专业设计工具 1)Innoveda公司的ViewDraw,Power PCB,Cam350 2)CADENCE公司的OrCad,Allegro,Spectra 3)Altera公司的MAX+PLUS II 4)学习熟练使用VIEWDRAW、ORCAD、POWERPCB、SPECCTRA、ALLEGRO、CAM350、MAX+PLUS II、ISE、FOUNDATION等工具 5)XILINX公司的FOUNDATION、ISE 一.硬件总体设计 掌握硬件总体设计所必须具备的硬件设计经验与设计思路 1)产品需求分析 2)开发可行性分析 3)系统方案调研 4)总体架构,CPU选型,总线类型 5)数据通信与电信领域主流CPU:M68k系列,PowerPC860,PowerPC8240,8260体系结构,性能及对比6)总体硬件结构设计及应注意的问题 7)通信接口类型选择 8)任务分解 9)最小系统设计 10)PCI总线知识与规范 11)如何在总体设计阶段避免出现致命性错误 12)如何合理地进行任务分解以达到事半功倍的效果 13)项目案例:中、低端路由器等 二.硬件原理图设计技术 目的:通过具体的项目案例,详细进行原理图设计全部经验,设计要点与精髓揭密。 1)电信与数据通信领域主流CPU(M68k,PowerPC860,8240,8260等)的原理设计经验与精华;

硬件工程师培训教程(15个doc)5

硬件工程师培训教程(15个doc)5

硬件工程师培训教程(二) 第二节计算机的体系结构 一台计算机由硬件和软件两大部分组成。硬件是组成计算机系统的物理实体,是看得见摸得着的部分。从大的方面来分,硬件包括CPU(Central Processing Unit ——中央处理器)、存储器和输入/输出设备几个部分。 CPU 负责指令的执行,存储器负责存放信息(类似大脑的记忆细胞),输入/输出设备则负责信息的采集与输出(类似人的眼睛和手)。具体设备如我们平常所见到的内存条、显卡、键盘、鼠标、显示器和机箱等。软件则是依赖于硬件执行的程序或程序的集合。这是看不见也摸不着的部分。 一、Von Neumann (冯. 诺依曼)体系结构 Von Neumann 体系结构是以数学家John Von Neumann 的名字命名的,他在20 世纪40年代参与设计了第一台数字计算机ENIAC 。Von Neumann 体系结构的特点如下: ·一台计算机由运算器、控制器、存储器、输入和输出设备5 大部分组成。 ·采用存储程序工作原理,实现了自动连续运算。 存储程序工作原理即把计算过程描述为由许多条命令按一定顺序组成的程序,然后把程序和所需的数据一起输入计算机存储器中保存起来,工作时控制器执行程序,控制计算机自动连续进行运算。Von Neumann 体系结构存在的一个突出问题就是,外部数据存取速度和CPU 运算速度不平衡,不过可以通过在一个系统中使用多个CPU 或采用多进程技术等方法来解决。 二、CPU CPU 是计算机的运算和控制中心,其作用类似人的大脑。不同的CPU 其内部结构不完全相同,一个典型的CPU 由运算器、寄存器和控制器组成。3 个部分相互协调便可以进行分析、判断和计算,并控制计算机各部分协调工作。最新的CPU 除包括这些基本功能外,还集成了高速Cache(缓存)等部件。 三、存储器 每台计算机都有3 个主要的数据存储部件:主存储器、高速寄存器和外部文件存储器。主存储器通常是划分为字(典型的是32 位或64 位)或字节(每字含4 或8 字节)的线性序列。高速寄存器通常是一个字长的位序列。一个寄存器的内容可能表示数据或主存储器中数据或下一条指令的地址。高速缓存通常位于主存储器和寄存器之间作为从主存储器存取数据的加速器。外部文件存储器包括磁盘、磁带或日益普及的CD-ROM 等,通常以记录划分,每个记录是位或字节的序列。 四、输入/输出(I/O )设备 输入设备类似人的眼睛、耳朵和鼻子,负责信息的采集,并提交给CPU 处理。具体产品如键盘、鼠标和扫描仪等。输出设备类似人的手,执行大脑(CPU)发出的指令,可完成一定的功能,输出计算机的运算结果。具体产品如打印机、显示器和音箱等。 五、总线 微型计算机的体系结构有一个最显著的特征是采用总线结构。总线就像一条公共通路,将所有的设备连接起来,达到相互通信的目的。与并行计算机(各部件间通过专用线路连接)相比,采用总线结构的微型计算机简化了设计、降低了成本、缩小了体积,但在同等配置条件下,性能有所下降。总线又分用于传输数据的数据总线(Data Bus)、传输地址信息的地址总线(Address Bus)和用于传输控制信号、时序信号和状态信息的控制总线(Control Bus)。 六、操作集 每台计算机都有一内部基本操作集与机器语言指令相对应。一个典型的操作集包括与内部数据类型相关的基本算术指令(即实数和整数加法、减法、乘法和除法等)、测试数据项性质(如是否为零,是正数或负数等)的指令、对数据项的某一部分进行存取和修改 (如在一个字中存取一个字符,在一条指令中存取操作数的地址等 )的指令、控制输入/输出设备的指令及顺序控制指令(如无条件跳转等)。 七、顺序控制 在机器语言程序中下一条要被执行的指令通常是由程序地址寄存器(也称为指令计数器)的内容确定

WINDOWS驱动编程

WDM驱动程序开发之读写设备寄存器:KIoRange类 2009-11-09 14:05 WDM驱动程序开发之读写设备寄存器:KIoRange类收藏 KIoRange类: 一、Overview KIoRange类将一系列特殊的外围总线的地址映射到CPU总线的地址空间。CPU总线上的地址即可能在CPU的I/O空间,也可能在CPU的内存空间,这取决于平台和外围总线的控制方式。考虑到可移植性,所有对I/O周期(I/O cycle)进行译码的设备驱动程序必须用这个类对I/O的位置(location)进行正确的访问(access)。KIoRange是KPeripheralAddress类的派生类。 一旦映射关系建立起来,驱动程序就用KIoRange类的成员函数去控制设备的I/O寄存器。这个类提供了8位、16位和32位I/O访问控制的函数。这些函数是以内联(in-line)函数方式来使用的,它们调用系统内相应的宏来产生依赖于平台的代码。 对I/O位置(location)进行访问的另一种备选方案是创建一个KIoRegister 的实例。这要通过取得一个KIoRange对象的数组元素来实现。 为了访问一系列外围总线内存空间的地址,需要用KMemoryRange类。 二、Member Functions 1、KIoRange - Constructor (4 forms) 构造函数 【函数原型】 FORM 1: KIoRange( void ); FORM 2: (NTDDK Only) KIoRange( INTERFACE_TYPE IntfType, ULONG BusNumber , ULONGLONG BaseBusAddress, ULONG Count, BOOLEAN MapToSystemVirtual =TRUE ); FORM 3 (WDM): KIoRange( ULONGLONG CpuPhysicalAddress, BOOLEAN InCpuIoSpace, ULONG Count, BOOLEAN MapToSystemVirtual =TRUE

硬件工程师必用的20个电子线路图

这 20 个电子线路图,硬件工程师一定用得上! 电子技术、无线电维修及SMT 电子制造工艺技术绝不是一门容易学好、短时间内就能够掌握的学科。这门学科所涉及的方方面面很多,各方面又相互联系,作为初学者,首先要在整体上了解、初步掌握它。 无论是无线电爱好者还是维修技术人员,你能够说出电路板上那些小元件叫做什么,又有什么作用吗?如果想成为元件(芯片)级高手的话,掌握一些相关的电子知识是必不可少的。 普及DIP 与SMT 电子基础知识,拓宽思路交流,知识的积累是基础的基础,基础和基本功扎实了才能奠定攀登高峰阶梯!这就是基本功。 电子技术的历史背景: 早在两千多年前,人们就发现了电现象和磁现象。我国早在战国时期(公元前 475 一211 年)就发明了司南。而人类对电和磁的真正认识和广泛应用、迄今还只有一百多年历史。在第一次产业革命浪潮的推动下,许多科学家对电和磁现象进行了深入细致的研究,从而取得了重大进展。人们发现带电的物体同性相斥、异性相吸,与磁学现象有类似之处。 1785 年,法国物理学家库仑在总结前人对电磁现象认识的基础上,提出了后人所称的“库仑定律”使,电学与磁学现象得到了统一。 1800 年,意大利物理学家伏特研制出化学电池,用人工办法获得了连续电池,为后人对电和磁关系的研究创造了首要条件。 1822 年,英国的法拉第在前人所做大量工作的基础上,提出了电磁感应定律,证明了“磁”能够产生“电”这,就为发电机和电动机的原理奠定了基础。 1837 年美国画家莫尔斯在前人的基础上设计出比较实用的、用电码传送信息的电报机,之后,又在华盛顿与巴尔的摩城之间建立了世界上第一条电报线路。 1876 年,美国的贝尔发明了电话,实现了人类最早的模拟通信。英国的麦克斯韦在总结前人工作基础上,提出了一套完整的“电磁理论”表,现为四个微分方程。这那就后人所称的“麦克斯韦方程组”麦.克斯韦得出结论:运动着的电荷能产生电磁辐射,形成逐渐向外传播的、看不见的电磁

硬件工程师培训教程(三)

硬件工程师培训教程(三) 第一节CPU的历史 CPU从最初发展至今已经有20多年的历史了,这期间,按照其处理信息的字长,C PU可以分为4位微处理器、8位微处理器、16位微处理器、32位微处理器以及64位微处理器等等。在风起云涌的IT 业界,PC机CPU厂商主要以I n t el 、AMD和V I A(威盛)三家为主,我们将以他们的产品为介绍重点。 一、Intel 阵营 I n t e l(英特尔)公司大家已经是如$贯耳,不管你是否为计算机高手,也不管你是否是业内人士,只要你知道计算机这个词,对I n t el就一定不会陌生。 I n t el是全世界硬件行业的老大,是世界上最大的芯片生产商和制造商。提到I n t el公司就不能不谈谈I n t e l C PU芯片的发展历程。按照 国际上目前比较能够得到业内认同的说法,I n t el的CPU芯片主要经历了以下几个发展阶段: 1 .I n t e l 4 0 04 1971年,Intel 公司推出了世界上第一款微处理器4004 。这是第一个 用丁个人计算机的4位微处理器,它包含2 3 00个晶体管,由丁性能很差,市场反应冷淡。 2 .I ntel 8080 /8 0 85 在4 0 04之后,I n t el 公司乂研制出了8080处理器和8 0 85处理器,加上当时美国M o t or o la 公司的M C 6 8 00微处理器和Z i l og公司的Z80微处理器,一起组成了8位微处理器家族。 3 .I ntel 8086 /8 0 88 16微处理器的典型产品是I n t el公司的8086微处理器,以及同时生产出的数学协处理器,即8087 。这两种芯片使用互相兼容的指令集,但在8 0 87指令集中增加了一些专门用丁对数、指数和三角函数等数学 计算的指令。由丁这些指令应用丁8 0 86和8 0 87,因此被人们统称 为x 86指令集。此后I n t el推出新一代CPU产品均兼容原来的x 86指令集。 1979年I n t el 公司推出了8 0 86的简化版 ——8088芯片,它仍是16位微处理器,内含2 9 0 00个晶体管,时钟频率为4 .7 7 M Hz,地址总线为20 位,可以使用1MB内 存。8088的内部数据总线是16位,外部数据总线是8位。1981年, 8 0 88芯片被首次用丁I B M PC机当中,开创了个人电脑的新时代。如果说8080处理器还不为大多数人所熟知的话,那么8 0 88则可以说是家喻户晓了, P C(个人电脑)机的第一代C PU便是从它开始的。 1982年的I n t e l 8 0 2 86虽然是16位芯片,但是其内部已包含了1 3 .4 万个晶体管,时钟频率也到了前所未有的 2 0 M Hz。其内、外部数据总线均为16位,地址总线为24位,可以使用1 6 MB内存,工作方式包括实模式和保护模式两种。 5 .I nt el 80386DX/8 038 6 SX 32位微处理器的代表产品首推I n t el公司1 9 85年推出的8 0 3 86,这是一种

相关主题
文本预览
相关文档 最新文档