数字工程师学习内容(应聘数字工程师必须知道的基础知识)
数字电路,你说复杂吗,无非就是一些01 10的组合罢了
你说简单吗,维修起来也并没有那么简单,今天就讲一讲数字维修的一些必备知识!
信息量较大,我先把目录放在上面,感兴趣的可以往下翻
- 门电路
- 二进制
- 编码解码
- 触发器
- 寄存器
- ADC/DAC
- 通讯总线介绍
- 程序的写入和CPU FLASH DDR之间的关系
首先讲下数字电路的优点:
- 电路简单,便于调制,有无分明,只有0和1,容易标准化
- 保真度高,不容易受到外界干扰
- 便于控制和编码解码,随便用一种单片机编程就能控制
数字电路的基础电路-门电路
为什么要用到门电路,因为计算机只认识0和1,也就是高低电平,所以我们必须在后面把我们的所有信息都转换成0和1,也就是二进制的出现。
门电路的可以输出高低电平,每个门电路可以表示出一位,多个门电路组合可以表示出任意的多位数值。比如1用二进制表示为1,3用二进制表示就是11,15用二进制表示就是1111,这种表示方法虽然人类看起来有点费解,但是对计算机却很简单,他们的加减运算跟十进制一样,例如对于加法来说十进制是遇到十进一位,而二进制则遇到二进一。
非门:利用内部结构,使输入的电平变成相反的电平
与门:不满足有两个高电平(1)则输出低电平(0)。
或门:不满足有两个低电(0)输出高电平(1)
二进制数字波形(bit)
一个bit表示两个状态,多个状态要用更多bit来表示
状态要求时钟比较严格,不能出错和抖动,所以一般在电路中会加入时钟的防抖动电路(jitterLTU)
编码-译码
信息用二进制表示出来了,下面我们还需要对他进行一定的编码和解码(译码)
编码按照事先制定的协议来进行输出即可,如MP3 /H264/8421/BCD码等
译码,就是按照MP3/H264/8421/BCD的协议来解析出来即可,编码协议大家感兴趣可以自行研究。
触发器
• 触发器有4个输入,Set/Reset/D/Clk
• 状态:S/R选择有效无效(一般都会让它工作在无效状态)
• 有效时是跟随R的状态触发
• 无效时以时钟信号作为参考,抓取上升沿和下降沿时候的D状态(边沿触发器)
• JK触发器是工作在下降沿
数字电路常用于分频,如下,二分频触发器
D触发器分频(抓取时钟的上升沿)
寄存器
• 锁存住你输入的信息
• 首先需要产生两个电平,0/1
详细的过程看我上篇视频介绍
ADC/DAC(数模转换-模数转换)
ADC,Analog-to-DigitalConverter的缩写,指模/数转换器或者模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号,例如温度、压力、声音或者图像等,需要转换成更容易储存、处理和发射的数字形式。模/数转换器可以实现这个功能,在各种不同的产品中都可以找到它的身影。
DAC,数模转换器,又称D/A转换器,简称DAC,它是把数字量转变成模拟的器件。
举例:
ADC:
采样---保持---量化---编码
精度---转换速度
精度是多少位bit
例如:U2输出DB0-DB7有8位
就是2^8,有256级精度
比如RV1输入5V,就是把5V分成256份,step为5/256=0.019V
DAC:
DB0-DB7有MCU发出01010101
例如,发送00000000RV1输出就是0V
发送11111111输出就是5V
ROM/RAM/CPU(只读寄存器/随机存取寄存器/中央处理器)
ROM,是Read Only Memory的缩写,在系统停止供电的时候仍然可以保持数据
- ROM也有很多种,PROM是可编程的ROM,PROM和EPROM(可擦除可编程ROM)两者区别是,PROM是一次性的,也就是软件灌入后,就无法修改了,这种是早期的产品,现在已经不可能使用了,而EPROM是通过紫外光的照射擦出原先的程序,是一种通用的存储器。另外一种EEPROM是通过电子擦除,价格很高,写入时间很长,写入很慢。
RAM,是Random Access Memory的缩写,在掉电之后就丢失数据,典型的RAM就是计算机的内存。
- RAM有两大类,一种称为静态RAM(Static RAM/SRAM),当数据被存入其中后不会消失。SRAM速度非常快,是目前读写最快的存储设备了。当这个SRAM单元被赋予0或者1的状态之后,它会保持这个状态直到下次被赋予新的状态或者断电之后才会更改或者消失。但是存储1bit的信息需要4-6只晶体管。因此它也非常昂贵,所以只在要求很苛刻的地方使用,譬如CPU的一级缓冲,二级缓冲。另一种称为动态RAM(DynamicRAM/DRAM),DRAM必须在一定的时间内不停地刷新才能保持其中存储的数据。DRAM只要1只晶体管就可以实现。DRAM保留数据的时间很短,速度也比SRAM慢,不过它还是比任何的ROM都要快,但从价格上来说DRAM相比SRAM要便宜很多,计算机内存就是DRAM的。
CPU, 中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
通讯总线
了解了数字电路的几大硬件,下面说说他们之间的通讯方式,由于通讯协议较多,下面仅介绍常用的协议
1. UART
UART是一种通用串行数据总线,用于异步通信,速度较慢,>1.5Mb/s。该总线双向通信,可以实现全双工传输和接收。在嵌入式设计中,UART用来与PC进行通信,包括与监控调试器和其它器件,如EEPROM通信。
2. SPI
同步外设接口(SPI)是由摩托罗拉公司开发的全双工同步串行总线,该总线大量用在与EEPROM、ADC、FRAM和显示驱动器之类的慢速外设器件通信.
SPI通信总线基于主-从配置。它有以下4个信号:
MOSI:主出/从入
MISO:主入/从出
SCK:串行时钟
SS:从属选择
芯片上“从属选择”(slave-select)的引脚数决定了可连到总线上的器件数量。
在SPI传输中,数据是同步进行发送和接收的。数据传输的时钟基于来自主处理器的时钟脉冲,摩托罗拉没有定义任何通用SPI的时钟规范。然而,最常用的时钟设置基于时钟极性(CPOL)和时钟相位(CPHA)两个参数,CPOL定义SPI串行时钟的活动状态,而CPHA定义相对于SO-数据位的时钟相位。CPOL 和CPHA的设置决定了数据取样的时钟沿。
数据方向和通信速度 SPI传输串行数据时首先传输最高位。波特率可以高达5Mbps,具体速度大小取决于SPI硬件。
3. I2C总线
I2C是由飞利浦公司开发的双线同步总线。像SPI一样,该总线可用来与EEPROM、ADC、DAC和LCD这类慢速器件进行通信。
I2C是一个半双工、多主总线,该总线网络有一个或几个主控器件和很多个从器件。信息由两条串行线传输:串行数据线(SDA)和串行时钟线(SCL)。传输速度高于SPI和UART.
4. ETH(Ethernet以太网)
就是我们平时说的网速,目前千兆已经达到1G/s。
5. CPRI
CPRI协议由爱立信、华为、NEC、北电和西门子五个厂家联合发起制定,用于无线通讯基站中基带到射频之间的通用接口协议,对其它组织和厂家开放。
6. JESD204B
一种新型的基于高速SERDES的ADC/DAC数据传输接口。ADC/DAC的采样速率变得越来越高,数据的吞吐量越来越大,对于500MSPS以上的ADC/DAC,动辄就是几十个G的数据吞吐率,采用传统的CMOS和LVDS已经很难满足设计要求,JESD204B应运而生。现在各大厂商的高速ADC/DAC上基本都采用了这种接口。传输速度高达12.5Gb/s.
JESD204B的优缺点
优点:
a) 减少了PCB布板空间。
b) 减小了器件的引脚和封装大小。
c) 更简单的时序控制
缺点:
a) 更复杂的电路设计,需要特殊的时钟电路
b) 增加了接口的传输延时
7. GPIB(General-Purpose Interface Bus)
通用接口总线,大多数我们的设备就是通过GPIB线以及GPIB接口与电脑相连(电源-频谱-网分)。
数据传输采用并行比特(位)、串行字节(位组)双向异步传输方式,其最大传输速率不超过1兆字节每秒。
总线上传输的消息采用负逻辑。低电平(≤ 0.8V)为逻辑“1”,高电平(≥ 2.0V)为逻辑“0”。
8. RS232
RS-232是现在主流的串行通信接口之一。由于RS232接口标准出现较早,难免有不足之处,主要有以下四点:
(1)接口的信号电平值较高,易损坏接口电路的芯片。RS232接口任何一条信号线的电压均为负逻辑关系。即:逻辑“1”为-5—-15V;逻辑“0”: 5— 15V。
(2)传输速率较低,在异步传输时,波特率为20Kb/s;综合程序波特率只能采用19200,也是这个原因。
(3)接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。
(4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在15米左右。
9. RS485
1. RS-485的电气特性:逻辑“1”以两线间的电压差为 (2~6)V表示;逻辑“0”以两线间的电压差为-(2~6)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便与TTL 电路连接。
2. RS-485的数据最高传输速率为10Mbps 。
3. RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好。
程序的写入和CPU FLASH DDR之间的关系
程序编好之后要通过专用的软件编译成芯片识别的指令,通过抓取时钟的上升沿写进ROM,过程大概是:
串口(RX-TX)---CPU(RX-TX)---DDR(RX-TX)---ROM(RX-TX)
好了,今天先说到这里吧,信息量有点多,不知道大家能不能消化,可以先关注,忘记的时候打开看看。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com