搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
天景科技苑
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:CalendarPicker)_鸿蒙calendar kit
2
人工智能技术在电子商务中的应用,给消费者带来哪些便利?_.ai技术和电子商务之间有关系吗?对你的生活有什么帮助?结合所学知识阐述
3
Linux shell编程学习笔记29:shell自带的 脚本调试 选项_bash 调试
4
【视频异常检测】VadCLIP: Adapting Vision-Language Models for Weakly Supervised Video Anomaly Detection 论文阅读
5
jupyter notebook配置指南
6
NFTScan 正式上线 Mint NFTScan 浏览器和 NFT API 数据服务
7
从零实现深度学习框架——常见运算的计算图_深度学习算法框图符号
8
jdk8新特性
9
探索医疗图像处理的未来:U-KAN,打造强大背景区分与生成模型
10
【初阶数据结构】理解堆的特性与应用:深入探索完全二叉树的独特魅力
当前位置:
article
> 正文
驱动开发必备硬件知识_芯片驱动开发需要懂硬件吗
作者:天景科技苑 | 2024-07-23 16:55:14
赞
踩
芯片驱动开发需要懂硬件吗
综述:在嵌入式领域,可分为硬件开发和软件开发。对于软件开发又可分为底层开发(模块驱动编写,uboot,内核),上层开发(应用,QT)。 作为一名软件驱动开发的工程师,我们不需要去设计硬件的原理图,PCB。我们只需看懂硬件开发人员提供的硬件模块时序就行了,但是我们应该也需了解如下硬件知识。
一)处理器
1,可分为通用处理器(单片机,ARM),数字处理器(DSP),其他专用处理器(FPGA)
在通用处理器领域中,采用的内核有
51,AVR,PIC,ARM
。在当今通用处理器芯片大多数采用ARM架构并且多采用SOC的芯片设计方法,集成了各种功能模块(图形处理器,视频解码器,浮点协处理器,GPS,WIFI等),每一种功能都是由硬件描述语言设计程序,然后在Soc内由电路连接实现。
主流的ARM移动处理芯片供应商有:高通,三星,英伟达,美满,联发科,海思(哪个国家的?尴尬了)。
中央处理器的体系结构:冯.诺依曼结构(程序指令存储器和数据存储器合并在一起的存储结构),哈佛结构(
程序指令存储器和数据存储器分开的存储结构
)。
指令集:RISC(精简指令集计算机)和CISC(复杂指令集计算机)。CISC强调增强指令的能力,减少目标代码数量,但指令复杂,指令周期长。RISC强调尽量减少指令集,指令单周期执行,但是目标代码会更大。ARM,MIPS等内核CPU都采用了RISC指令集。
2,数字信号处理器:针对通信,图像,语音,视频处理等领域的算法设计。它包含的硬件乘法器,DSP的乘法指令一般在单周期内完成,且优化了卷积,数字滤波,FFT,相关矩阵运算等算法中的大量重复乘法。
德州仪器(TI),美国模拟器件公司(ADI)是全球DSP的两大主厂商。
3,其他专用处理器:为某种应用的特定设计。采用ASIC,CPLD/FPGA等实现。 在实际项目的硬件方案中,往往会根据应用的需求方案选择通用处理器,数字处理器,特定领域处理器,CPLD/FPGA或ASIC之一的解决方案,在复杂系统中,这些芯片可同时存在,协同合作,各自发挥自己的长处。(ARM+DSP+FPGA)。
二 存储器
存储器主要可分为只读存储器(ROM),闪存(Flash),随机存取存储器(RAM)。
1,ROM在可细分为:不可编程ROM ,可编程ROM,电可擦除可编程ROM(E2PROM),它可完全用软件来擦写。
2,FLASH可分为NOR(或非),NAND(与非)两种,Intel于1988年首先开发出Nor flash 技术,紧接着1989年,东芝发表了NAND flash结构,彻底改变了原先的EPROM,EEPROM垄断的地位。
Nor Flash:程序可直接在nor中执行,支持位擦写,支持SPI接口,
存储量小。
Nand Flash:储存量大,页擦除,占用的I/O多。
3,RAM可分为静态RAM和动态RAM。动态RAM储存在电容中,擦写速度快,由于电容器有漏电现象,因此需要定期刷新。静态RAM不需要定期刷新电路,储存速度慢。(好坏,快慢都是相比较而言的)
4,其他 嵌入式系统中往往还有些特定类型的RAM
双端口RAM:具有两套完全独立的地址,数据总线,用于两个处理器之间的数据交互,具有同时读写的的功能。
内容寻址RAM(CAM):以内容进行寻址的存储器,是一种特殊的存储阵列RAM,它的主要工作机制就是同时将一个输入的数据与存储在CAM中的所有数据自动进行比较,判断该输入数据项与CAM中存储单元的数据项是否相匹配,并输出该数据项对应的匹配信息。
FIFO:先进先出队列:特点是先进先出,进出有序,FIFO多用于数据缓冲。
三 接口与总线
1,串口:RS-232是一种单机发送,多机接收的单向,平衡传输规范,后来发展的RS-422改进了RS232通信距离短,通信速度慢的特点,在RS-485中,又增加了多点,双向通信能力,即允许多个发送器连接在一条总线上。串口电路组成部分:CPU---UART--RS-232芯片---连接器(接口芯片)。
2,I2C
I2C总线是由Philips公司开发的两线式串行总线,产生于20世纪80年代,用于连接微控制器及外围设备。I2C总线支持多主控,但需要注意的是在任意时刻只能有一个主控。
相应时序:当SCL稳定在高电平时,SDA由高向低的变化将产生一个开始位,而且由低到高变化,则产生一个停止位。(都有注主设备产生)
在选择设别时:主设备需要首先发送一个字节的地址信息,前7位代表地址信息,最后一位代表读写信息。
数据通信:在第9个上升沿来到之前,从设备应该发出一个ACK位。结束时,SCL稳定保持在高电平期间,SDA从低向高,产生停止信号。
3 SPI
SPI总线系统是一种同步串行外设接口,它可以使CPU与各种外围设别以串行的方式进行通信。SPI接口一般使用4条线,串行时钟线,主机输入/从机输出数据线(MOSI),主机输出/丛机输入线(MOSI),和低电平有效的数据选择线(SS)。
4 USB
USB:具有数据传输高,易扩展,支持热插拔等特点。在USB1.1中传输速度有12Mbit/s,在USB2.0中,传输速率达到480Mbit/s。在USB3.0中,传输速率甚至高达5.0Gbit/s。在USB2.0总线的机械连接非常简单,采用4芯的屏蔽线,一对差分线(D+,D-)传输信号,另一对(VBUS,电源地)传送+5v的直流电。
5 以太网接口
以太网接口由MAC(以太网媒体接入控制器)和PHY(物理接口收发器)组成。以太网MAC由IEEE802.3以太网标准定义,实现数据链路层。常用的MAC支持10Mbit/s和100Mbit/s两种速率。吉比特网是快速以太网的下一代,速度将高达1000Mbit/s.
6 PCI和PCI-E
PCI是一种局部总线,作为一种通用的总线接口标准,它目前在计算机系统中得到了非常广泛的应用。
7 SD和SDIO
SD是一种关于FLASH的储存卡的标准,也就是一般常见的SD记忆卡,在设计上与MMC保持兼容。
SDIO在SD标准的基础上,定义了储存卡以外的外设接口。
四 CPLD和FPGA
CPLD由完全可编程的与或门阵列以及宏单元构成。 与CPLD不同,FPGA(现场可编程门阵列)基于LUT(查找表)工艺。CPLD和FPGA的主要厂商有Altera,Xilinx和Lattice等,它们专门的开发流程,在设计阶段使用HDL编程。它们可实现许多复杂功能,如实现USART,I2C等I/O控制芯片,通信算法,音视频解码算法等。甚至还可以直接集成ARM等CPU内核和外围电路。对于驱动工程师而言,我们就直接把它看成由很多逻辑门(与 或 非)组成的可完成一系列功能的芯片。如果完成的功能是CPU,我们就直接把它看成是CPU。驱动工程师眼里的硬件要比IC设计师要宏观。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/天景科技苑/article/detail/870766
推荐阅读
article
CHARLS
数据
库
提取
数据
和清洗—
基于
R...
学习资料,包括
CHARLS
离线
数据
库
、SCI论文思路复现代码-
基于
R、讲义。关注公众号“熊大学习社”,回复“charls...
赞
踩
article
大
厂与
小
厂招人
的
区别
,看完多少有点不敢相信_招聘
大
公司
和
小
公司
的
区别
...
前两天在头条发了一条招人
的
感慨,关于
大
厂招人
和
小
公司
招人
的
区别
。_招聘
大
公司
和
小
公司
的
区别
招聘
大
公司
和
小
公司
的
区别
...
赞
踩
article
【蓝桥杯
Java
组】
一
学就会的小
技巧
(
一
):
前缀
和
_
前缀
和
处理
技巧
下标为
1
...
一
个超级简单,
一
学就会的小
技巧
之
前缀
和
,内附两道模板题~_
前缀
和
处理
技巧
下标为
1
前缀
和
处理
技巧
下标为
1
...
赞
踩
article
微信
小
程序
内嵌
webView
访问H5界面,在H5界面
获取
定位
_
小
程序
webview
获取
定位
...
H5使用weixin-js-sdk过去
定位
wx.getLocation,域名映射_
小
程序
webview
获取
定位
小
程序
we...
赞
踩
article
MQ
简介以及
Rabbit
MQ
模式具体
实现
_
mq
实现
...
消息队列
MQ
概述
MQ
全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之...
赞
踩
article
2015
2016
计算机
视觉相关会议...
EventWhenWhereDeadlineDPPR
2015
Fifth International Conferenc...
赞
踩
article
在
java
后台
判断
两个
文件
是否
是同一
文件
_
java
判断
file
是否
指向
同一个
文件
...
1.计算MD5或SHA-1然后对比
判断
// 计算
文件
的 MD5 值 根据MD5值
判断
文件
是否
是
同一个
文件
public...
赞
踩
article
【
m>git
m>
】
如何实现规范
m>git
m>
m>co
m
m
it
m> -
m
的
格式...
【
代码
】
【
m>git
m>
】
如何实现规范
m>git
m>
m>co
m
m
it
m> -
m
的
格式。
【
m>git
m>
】
如何实现规范
m>git
m>
m>co
m
m
it
m> -
m
的
格式 ...
赞
踩
article
ROS2
极简总结-
SLAM
_
ros2
slam
...
参考文献:Navigation using ROS 2 Mapping
SLAM
- Simultaneous Local...
赞
踩
article
【
算法
】
字符
匹配
算法
详解与
代码
实现
_
文字
匹配
算法
...
在计算机科学中,
字符
匹配
算法
是一种在给定文本中查找特定模式的技术。这些
算法
在各种应用中都发挥着重要作用,包括文本编辑器、...
赞
踩
article
定制化
正则
化:在
Mojo
模型
中动态
应用
自定义
方法
...
在机器学习
模型
的训练过程中,
正则
化是一种用于防止过拟合的技术,它通过在损失函数中添加一个额外的惩罚项来实现。虽然
Mojo
...
赞
踩
article
1、
Flink
的
Table
API
&
SQL
API
概述...
Flink
的
Table
API
&
SQL
API
概述1、
Flink
的
Table
API
&
SQL
API
...
赞
踩
article
JS特效第148弹:
html5
css
3圆形
进度条
倒计时
页面跳转
代码
_
css
倒计时
圆环
代码
...
本文介绍了一段HTML5和CSS3结合的
代码
,用于创建一个带有
倒计时
功能的圆形
进度条
,当
倒计时
结束时页面会自动跳转到指定...
赞
踩
article
【
Elasticsearch
】
Elasticsearch
索引
创建
与
管理
详解_elasticsearc...
Elasticsearch
是一个基于 Apache Lucene 的开源搜
索引
擎,具有分布式、近实时、RESTful ...
赞
踩
article
JQuery
+
HTML
+
JavaScript
:实现地图
位置
选取
和地址
模糊
查询...
本文详细讲解了如何使用 `
JQuery
+
HTML
+
JavaScript
` 实现移动端页面中的地图
位置
选取
功能。本文逐步展...
赞
踩
article
StableDiffusion
(一)——
提示
词
分类和
书写
方式
_
stablediffusion
负面
提示
...
(1个女孩:2.0),独奏,nilou \(genshin impect\),独奏,长发,珠宝,蓝色宝石,耳环,角,皇冠...
赞
踩
article
使用
simulink
搭建简单的
安时
积分
计算电池的
SOC
_
安时
积分
法
simulink
...
使用
simulink
搭建简单的
安时
积分
计算电池的
SOC
_
安时
积分
法
simulink
安时
积分
法
simulink
...
赞
踩
article
java
实现
excel
数据
比对
代码
_
java
上传
Excel
文件
并比对
数据
...
这里是在完整的Struts框架上编写的。1.页面 页面上用简单的就行了,使用form提交。设计一个提交按钮,点击按钮提交...
赞
踩
article
sp
a
rk
-sql:
in
sert
overwrite
分区表问题_error
in
query
: c...
sp
a
rk
-sql:
in
sert
overwrite
分区表问题_error
in
query
: c
a
nnot over...
赞
踩
article
MyBatisPlus
:PG
数组
类型
自动
映射
问题
_
mybatis
pg
映射
数组
...
MyBatisPlus
:PG
数组
类型
自动
映射
问题,自定义
类型
映射
器解决。
_
mybatis
pg
映射
数组
mybatis
p...
赞
踩
相关标签
r语言
软件测试
自动化测试
程序人生
面试
职场和发展
蓝桥杯
算法
java
前缀和
vue.js
前端
xss
npm
前端框架
rabbitmq
分布式
中间件
git
ROS2
机器人操作系统
SLAM
turtlebot3
cartographer