设备驱动开发详解第一章读书笔记
设备驱动开发详解第一章??Linux设备驱动概述硬件是基础,代码最终会落实为硬件的组合逻辑和时序逻辑。 OS适合于多任务环境。 计算机硬件:1.?CPU???2.?存储器??3.?外设????驱动针对存储器与外设,而不是CPU核 字符设备:串行顺序访问 块设备:可随机访问 网络设备:不对应文件系统节点 Linux设备驱动重点:良好的硬件基础,懂得SRAM?Flash??SDRAM读写方式,?UART?IIC?USB接口以及轮询,中断,DMA原理,PCI总线,MMU单元等。 第二章??驱动设计的硬件基础? 主流嵌入式CPU:???1.?ARM?? ???????????????????2.?MIPS公式的MIPS?:常用于以太网交换??? ???????????????????3.?IBM与Motorola的PowerPC:常用于通信和工控 ???????????????????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(电可擦出、可编程) Flash:1.?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:无刷新频率 SDRAM,DDR均属于DRAM,采用与CPU外存控制器同步的时钟工作 原理图分析获得各种存储器,外设所使用的硬件资源。 主要包括存储器和外设控制器芯片所使用的片选,中断和DMA资源,大多情况下,硬件工程师已经做好。 分析方法:?以CPU为中心向存储器外设辐射 原理图元素:symbol?描述芯片的外围引脚及信号???P42页 ????????????Net描述芯片,接插件和分离原件的互联关系 时序分析:?驱动工程师调试电路板 ????作用:让芯片间的访问满足芯片手册中时序图信号的先后顺序;采样建立时间,保持时间的要求 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |