STM32是怎么工作的
- [1 从孩子他妈说起](#1 从孩子他妈说起)
- [2 早期计算机的组成](#2 早期计算机的组成)
-
- [2.1 五大元件](#2.1 五大元件)
- [2.2 早期的计算机组成](#2.2 早期的计算机组成)
- [2.3 走入集成电路时期](#2.3 走入集成电路时期)
1 从孩子他妈说起
现在的电子信息系统绝大部分都是智能电子信息系统,所谓智能,是指系统的硬件设计当中,有CPU(central processing unit),以CPU为核心设计控制器,控制系统的运行。
同时,对于电子信息系统而言,其需要感知外部物理环境。
可以"感知外部环境"的装备,名曰:传感器,即sensor。
让我们学究一点,朋友们,去查查sensor的定义:
光照强度、温度、压力、速度、角速度,等等,都属于物理量,
传感器就是这个"系统"的眼睛,
"系统"的大脑是计算机,大脑的核心是"CPU",也就也是中央处理单元。
然而,对于CPU而言,它只能识别高低电平,我们将低电平记作0,高电平记作1。
因此,传感器需要将物理量转换为电量:
但是,传感器输出的电量通常是毫伏(mV)级 的,我们需要将其通过放大器放大到伏特(V)级 。之后,我们要将放大后的信号,经过一定的滤波电路进行滤波。这个滤波电路可以是有源滤波,可以是无源滤波,这些都是模拟电子电路的知识点,同学们可以去自行复习。
我们将放大和滤波电路,称之为 "前端调理电路" 。
注意:上图中,我们在调理电路的输出端,加了测试点,这里的意思是,在画PCB印制电路板时,在调理电路的输出端,要留出一定的空间,方便测试,也就是能够放下示波器的夹子。
由于调理电路出来的是模拟连续信号,而CPU只能处理数字信号,因此,需要设计一个模块,将模拟信号转换为数字信号,也就是 Conversion of analog signals to digital signals ,我们可以简记为AD转换。A就是analog,D就是digital。
AD转换模块,有两个重要指标:转换时间、转换精度 。要根据设计需要进行选择合适AD转换模块。
AD转换模块输出的数字量,可以送到CPU,如下:
根据实际需要,前端调理电路 和AD转换电路 ,必须要受CPU的控制,CPU要告诉AD转换电路 什么时候开始转换数据,同时要调整前端调理电路 的放大倍数等关键参数。
因此,框架图进一步晚上如下:
AD 转换电路,将数据输送给CPU后,CPU经过处理,输出的控制信号也是数字信号,因此需要将数字信号转换为模拟连续信号,即 Convert digital signals into analog continuous signals,记作,DA转换电路。
DA转换电路 输出的信号,还要再进行放大,放大后的信号,还要滤波,这个部分,我们称之为后端调理电路 。
大部分时候,CPU输出的数据,要显示出来,如下:
上图,就是电子信息系统的基本原理。
2 早期计算机的组成
2.1 五大元件
那CPU里面是什么呢?
要把这件事说清楚,还是从电子元器件讲起......
(1)第一个出场的是电容元件
时间可以追溯到1745年,清乾隆十年,英国 or 德国,说法不一,具体可以看看这个文章,谁发明了电容
(2)第二个出场的是二极管
谁发明的?同学们去看这篇文章,WHO INVENTED THE DIODE 谁发明了二极管。大家记住,时间+地点即可,时间:1873年,英国,那一年是 清朝 同治十二年。到今天大约是150年。
(3)第三个出场的是电阻元件
1885年英国C.布雷德利发明模压碳质实芯电阻器;
(4)第四个出场的是电感
术语"电感"是1886年由奥利弗·赫维赛德命名[1]。通常自感是以字母"L"标记,以纪念物理学家海因里希·冷次[2][3]。互感是以字母"M"标记,是其英文(Mutual Inductance)的第一个字母。采用国际单位制,电感的单位是亨利(Henry),标记为"H",以纪念科学家约瑟·亨利。与其他物理量的关系:一亨利等同一韦伯除以一安培(1 H = 1 Wb/A)。
(5)第五个出场的是三极管
1906年,美国,李·德富雷斯特。三极管简介,发明了第一个电子放大器。到了20世纪60年代,MOS诞生了,详情见MOS的历史。
2.2 早期的计算机组成
朋友们,想象一下,时空穿越,我们回到了上世纪中叶。我们手里的东西就是上面说的电子元器件,现在让你来制造一个计算机,或者电脑,你会怎么办?
首先,这个"电脑"能思维,具体来说,就是运算。预算包括什么呢?加减乘除算数运算,也就是 arithmetic operation。还要会什么呢?与、或、非、异或等逻辑运算,也就是 Logical operation。因此,我们首先要设计既能算数运算,又能逻辑运算的算术逻辑单元 arithmetic Logical Unit, ALU 。(话说,1945年数学家冯诺伊曼在一篇介绍被称为EDVAC的一种新型电脑的基础构成的报告中提出ALU的概念。)
如何设计ALU,这基本是数电的知识。
同学们,其实,ALU的作用就是一个算盘,那么问题来了,算盘听谁指挥呢? --控制器
我们需要再设计一部分控制ALU的电路,这部分电路就叫控制器 。
由控制器去控制ALU何时去运算,以及如何运算。
自然,我们就会想到,ALU对哪些数据做运算呢?或者说,运算的数据从哪来呢?
需要运算的数据在一个地方存着,这个地方就叫存储器 。 由控制器,控制存储器,将数据输送到ALU。
ALU运算后的数据,也可以存在存储器,所以:
同时,也有可能,ALU要处理 的数据来自由外部,由外部的输入设备输送数据给ALU,同时,输入设备也可以将数据传送到存储器。
输入是input,输出是output,我们将输入输出设备统一称为I/O设备。也就是说对于输入设备,称之为 I/O设备,对于输出设备,也称之为 I/O设备,而不是再去说 I 设备或 O 设备。
让我们再加上输出设备到框架图,不过多解释了。
好了,到这里,计算机早期的基本架构已经构建完成了。五大部分:ALU、控制器、存储器、输入设备和输出设备。
在之初,要设计这样的计算机,是很麻烦的。有的部件用电子管设计,有的用晶体管设计,而对于存储器,需要自己去绕磁芯。
经过这样设计的计算机,体积非常庞大的。
2.3 走入集成电路时期
到了60年代末70年代初,半导体技术噗噗噗 地发展,这时候,半导体公司开始将计算机中的两个核心部件:ALU和控制器,集成到 silicon chip 中去,
也就是所谓的"芯片",芯片中的控制器就是中央指挥机关,是大脑中的大脑。
因此,故弄玄虚的半导体公司将芯片称之为中央处理器, center processing unit,即CPU,问世了!!!
CPU芯片的体积非常小,因此也称为"微处理器"。
这里多说一句,计算机各部分之间交互信息是通过导线,而且不是一根导线,而是由一组导线,这一组一组的导线,我们就叫它bus,翻译为总线。
还没仔细梳理,有点乱大家看个热闹,会继续梳理出完。。。。。。。。。。。。晚安