《Linux设备驱动开发详解 A》一一2.7 芯片数据手册阅读方法

简介:

本节书摘来华章计算机出版社《Linux设备驱动开发详解 A》一书中的第2章,第2.7节,作者:宋宝华 更多章节内容可以访问云栖社区“华章计算机”公众号查看。1

2.7 芯片数据手册阅读方法

芯片数据手册往往长达数百页,甚至上千页,而且全部是英文,从头到尾不加区分地阅读需要花费非常长的时间,而且不一定能获取对设计设备驱动有帮助的信息。芯片数据手册的正确阅读方法是快速而准确地定位有用信息,重点阅读这些信息,忽略无关内容。下面以S3C6410A的数据手册为例来分析阅读方法,为了直观地反映阅读过程,本节的图都是直接从数据手册中抓屏而得到的。
打开S3C6410 A的数据手册,发现页数为1378页,从头读到尾是不现实的。
S3C6410A 数据手册的第1章“PRODUCT OVERVIEW”(产品综述)是必读的,通过阅读这一部分可以获知整个芯片的组成。这一章往往会给出一个芯片的整体结构图,并对芯片内的主要模块进行一个简洁的描述。S3C6410A的整体结构图如图2.27所示(见数据手册第61页)。
image

第2~43章中的每一章都对应S3C6410A整体结构图中的一个模块,图2.28为从Adobe Acrobat中直接抓取的S3C6410A 数据手册的目录结构图。
image

图2.28 S3C6410A 数据手册的目录结构
第2章“MemoryMap”(内存映射)比较关键,对于定位存储器和外设所对应的基址有直接指导意义,这一部分应该细看。
第3~34章对应于CPU内部集成的外设或总线控制器,当具体编写某接口的驱动时,应该详细阅读,主要是分析数据、控制、地址寄存器(数据手册中一般会以表格列出)的访问控制和具体设备的操作流程(数据手册中会给出步骤,有的还会给出流程图)。譬如为了编写S3C6410A的I2C控制器驱动,我们需要详细阅读类似图2.29的寄存器定义表格和图2.30的操作流程图。
第44章“ELECTRICAL DATA”(对于电气数据,在图2.28中未画出),描述芯片的电气特性,如电压、电流和各种工作模式下的时序、建立时间和保持时间的要求。所有的数据手册都会包含类似章节,这一章对于硬件工程师比较关键,但是,一般来说,驱动工程师并不需要阅读。
第45章“MECHANICAL DATA”(机械数据)描述芯片的物理特性、尺寸和封装,硬件工程师会依据这一章绘制芯片的封装(Footprint),但是,驱动工程师无须阅读。
image

image

相关文章
|
11天前
|
监控 Linux Perl
【专栏】Linux 命令小技巧:显示文件指定行内容的方法,包括使用`head`和`tail`命令显示文件头尾部分
【4月更文挑战第28天】本文介绍了Linux中显示文件指定行内容的方法,包括使用`head`和`tail`命令显示文件头尾部分,利用`sed`的行号指定功能以及`awk`处理文本数据。文章还列举了在代码审查、日志分析和文本处理中的应用场景,并提醒注意文件编码、行号准确性及命令组合使用。通过练习和实践,可以提升Linux文本文件处理的效率。
|
11天前
|
Linux
【Linux】命名管道的创建方法&&基于命名管道的两个进程通信的实现
【Linux】命名管道的创建方法&&基于命名管道的两个进程通信的实现
|
3天前
|
消息中间件 Linux 数据库
第五十三章 使用 ^SystemPerformance 监视性能 - InterSystems IRIS Linux 平台性能数据报告
第五十三章 使用 ^SystemPerformance 监视性能 - InterSystems IRIS Linux 平台性能数据报告
7 0
|
5天前
|
运维 网络协议 Linux
2024年最全CentOS8 Consul微服务架构安装(1)_agent(1),Linux运维开发面试
2024年最全CentOS8 Consul微服务架构安装(1)_agent(1),Linux运维开发面试
|
7天前
|
编解码 Linux 5G
FFmpeg开发笔记(二十)Linux环境给FFmpeg集成AVS3解码器
AVS3,中国制定的第三代音视频标准,是首个针对8K和5G的视频编码标准,相比AVS2和HEVC性能提升约30%。uavs3d是AVS3的解码器,支持8K/60P实时解码,且在各平台有优秀表现。要为FFmpeg集成AVS3解码器libuavs3d,需从GitHub下载最新源码,解压后配置、编译和安装。之后,重新配置FFmpeg,启用libuavs3d并编译安装,通过`ffmpeg -version`确认成功集成。
20 0
FFmpeg开发笔记(二十)Linux环境给FFmpeg集成AVS3解码器
|
9天前
|
运维 监控 关系型数据库
【Zabbix 6(1),Linux运维组件化开发教程
【Zabbix 6(1),Linux运维组件化开发教程
|
11天前
|
Linux C语言
|
11天前
|
Linux
Linux如何查询较大文件的方法
【5月更文挑战第8天】Linux如何查询较大文件的方法
23 0
|
11天前
|
Linux 网络安全
xmanager 4 连接SuSE linux server 11方法
xmanager 4 连接SuSE linux server 11方法
15 1
|
11天前
|
存储 缓存 Linux
xenomai内核解析--xenomai与普通linux进程之间通讯XDDP(三)--实时与非实时数据交互
本文介绍了Xenomai中的XDDP(Xenomai Distributed Data Protocol)通信机制,XDDP用于实时和非实时进程之间的数据交换。XDDP在Xenomai内核中涉及的数据结构和管理方式,以及创建XDDP通道后的实时端和非实时端连接过程。
50 0
xenomai内核解析--xenomai与普通linux进程之间通讯XDDP(三)--实时与非实时数据交互