设备驱动开发详解第一章读书笔记

来源:互联网 发布:linux文件夹修改权限 编辑:程序博客网 时间:2024/06/05 17:06

设备驱动开发详解

第一章  Linux设备驱动概述

硬件是基础,代码最终会落实为硬件的组合逻辑和时序逻辑。

OS适合于多任务环境。

计算机硬件:1. CPU   2. 存储器  3. 外设    驱动针对存储器与外设,而不是CPU

字符设备:串行顺序访问

块设备:可随机访问

网络设备:不对应文件系统节点

Linux设备驱动重点:良好的硬件基础,懂得SRAM Flash  SDRAM读写方式, UART IIC USB接口以及轮询,中断,DMA原理,PCI总线,MMU单元等。

第二章  驱动设计的硬件基础 

主流嵌入式CPU:   1. ARM  

                   2. MIPS公式的MIPS :常用于以太网交换   

                   3. IBMMotorolaPowerPC:常用于通信和工控

                   4. 飞思卡尔半导体公司的68K/Coldfire: 常用于DSP模块

Motorola的半导体部已独立为飞思卡尔半导体公司

中央处理器的体系:1. 冯洛伊曼结构   2. 哈佛结构

指令集: RISC  CISC    

DSP一般采用改进的哈佛结构

德州仪器(TI)  美国模拟器件公司(ADI)是全球DSP两大主要厂商

芯片使用:

一般来讲在一部手机中会使用多种芯片:1. MCU用于处理图形用户界面和OS

  2. DSP进行音视频编解码

3. ASIC进行射频

 存储器: 1. 只读存储器(ROM)  2. 闪存(Flash)  3. 随机存取存储器(RAM)  4. /磁介质存储器

ROM(将被Flash取代的趋势)  ROM(不可编程)  PROM(可编程)  EPROM(可擦出、可编程)  EEPROM(电可擦出、可编程)

Flash1. NOR Flash 或非Flash: Intel<---------SRAM----------->CPU接口

      2. NAND Flash 与非Flash  东芝<---------------控制电阻转换--------------->CPU接口

一个Nand Flash接口主要信号:

1. I/O总线  2. 芯片启动   3.写使能  4. 读使能  5. 指令锁存使能  6. 地址锁存使能   7. 就绪/

NOR && NAND Flash对比:

1  容量/性价比: NAND > NOR

2.  擦写次数:   NAND > NOR

3. 擦写/编程速度:NAND > NOR

4. 反转概率(出错)NAND > NOR

Flash 编程原理都是将1写成0,而不能将0写成1。所以在Flash编程之前必须将对应的块擦除,而擦出过程就是将所有位写1,块内的所有字节变成0xFF

问题:Flash可编程含义?擦出与编程含义?

典型的类SRAM接口 P26

ROM Flash 磁介质存储器  非易失性存储器(掉电不会丢失)

RAM(掉电丢失):静态RAM(SRAM)   动态RAM(DRAM) 

DRAM 以电荷形式存储数据 存储在电容器中 有固定的刷新周期

SDRAM:无刷新频率

SDRAMDDR均属于DRAM,采用与CPU外存控制器同步的时钟工作

原理图分析获得各种存储器,外设所使用的硬件资源。

主要包括存储器和外设控制器芯片所使用的片选,中断和DMA资源,大多情况下,硬件工程师已经做好。

分析方法: 以CPU为中心向存储器外设辐射

原理图元素:symbol 描述芯片的外围引脚及信号   P42

            Net描述芯片,接插件和分离原件的互联关系

时序分析: 驱动工程师调试电路板

    作用:让芯片间的访问满足芯片手册中时序图信号的先后顺序;采样建立时间,保持时间的要求

原创粉丝点击