WORK
2023.7.24 周一
1.调试便携式电源程序(程序逻辑服务于功能及硬件设计,对软件进行设计要先搞清楚功能需求及硬件设计)
NOTE
该电路重点在二极管保护作用的使用,二极管相关知识在收藏夹中:http://t.csdn.cn/ttoq5
专题:二极管中
供电1为蜂鸣器提供1路电源,因其设置原因会使正负极调换顺序,供电2提供另一路,假如供电1正负极顺序反转,下方二极管不仅能保护蜂鸣器,同时不让供电2的负极与供电1的正极直接导通;上方二极管使供电2正极与供电1负极不导通,保护电路。
2023.7.25 周二
1.协助便携式电源调试
2.杂活
NOTE
1.软件编程规范;
见收藏夹
2.各类工具使用。
见收藏夹
2023.7.26 周三
1.手提式电源程序编写调试:
float moving_average_filtre1(float xn1)
{
static int index1 = -1;
static float buffer1[MVF_LENGTH];
static float sum1 = 0;
float yn1 = 0;
int i1 = 0;
if(index1 == -1)
{
//初始化
for(i1 = 0; i1 <MVF_LENGTH; i1++)
{
buffer1[i1] = xn1;
}
sum1 = xn1*MVF_LENGTH;
index1 = 0;
}
else
{
sum1 -= buffer1[index1];
buffer1[index1] = xn1;
sum1 += xn1;
index1++;
if(index1 >= MVF_LENGTH)
{
index1 = 0;
}
}
yn1 = sum1/MVF_LENGTH;
return yn1;
}
递推平均滤波法(又称滑动平均滤波法)
2.ADC硬件连接时需注意:避免干扰,选择间隔较远的通道
NOTE
ADC处的滤波算法值得注意及借鉴
在收藏夹中
2023.7.27 周四
1.便携式电源硬件修改及安装
2.软件ADC调试(该模块自己独立修改,牛波一)
NOTE
ADC采样最高值为2.743V(外部基准电压为2.743V)?
什么是ADC的参考电压,为什么需要参考电压?
这个参考电压也叫做基准电压,如果没有基准电压,就无法确定被测信号的准确幅值。例如基准电压为2.5V,则当被测信号达到2.5V时ADC输出满量程读数,使用者就会知道ADC输出的满量程等于2.5V。不同的ADC,有的是外接基准,也有的是内置基准无需外接,还有的ADC外接基准和内置基准都可以用,但外接基准优先于内置基准。
2023.7.28 周五
1.安装便携式,箱式应急电源
2.参加公司级安全培训
BOOK
《趣话计算机底层》第三章
3.1计算机中的高速公路
3.1.1早期的总线系统(数据总线,地址总线,控制总线——由总线控制器管理,仲裁)
3.1.2南桥与北桥(总线挂接设备增加,效率不一,通信需求量增加——引入南桥与北桥芯片)
北桥负责高速设备,集成:内存控制器,总线控制器,图形控制器等。
南桥负责低速设备,根据IO设备的不同,进一步划分PCI总线,USB总线,SATA总线等。
3.1.3消失的北桥(北桥的活集成到了CPU里)
3.2其他设备如何与CPU通信(中断通信,原因:其他设备太慢,CPU不可能一直等,因此采用中断)
3.2.18259A可编程中断控制器
该芯片专门负责统一管理办事单位,CPU给各办事单位分配编号,叫中断向量,并做了表格IDT;idtr寄存器指向这个表格。
注意:中断是异步的,异常是同步的。
3.2.2APIC高级可编程中断控制器(8259A的升级版)
分两个部分:IO APIC,负责接待办事单位;Local APIC ,入驻到CPU中。
3.2.3中断亲和性(中断由哪个核处理的分配策略)
3.3计算机启动过程
1)CPU自检;2)从ROM的BIOS开始取指令并执行;3)读取MBR(硬盘主引导记录);4)操作系统加载工作,进入保护模式(虚拟地址)
3.4CPU把数据搬运的工作“外包”出去
3.4.1PIO模式(CPU与外设通过IO端口与内存,硬盘通信,速度慢)
3.4.2DMA技术(直接存储器访问,用于外部设备与内存之间搬运数据)(解放CPU,将数据传输工作外包,DMA完成后以中断通知)
3.4.3DMA全面开花(网卡,显示器摄像头等集成自己的DMA)
3.5神奇的零拷贝技术
3.5.1数据的四次拷贝
3.5.2零拷贝技术
3.6网卡是如何让工作的
3.6.1集线器时代
收到的信号做增强处理后发给全部端口(一条总线),导致发送数据前需要先监听线路,发送时也要检测是否有冲突,因此以太网帧的长度有了限制。
3.6.2数据收发过程
数据封装为以太网帧(帧头部:收件人地址(MAC地址,网卡的身份证号,在出生那一刻就确定了;发件人地址)
3.6.3交换机时代
取代集线器,不再往全部端口发送,隔离冲突域+全双工通信
3.7网卡收到数据包后会发生什么
3.7.1数据帧校验
a)CRC校验;b)对照MAC地址
3.7.2DMA数据传输
DMA将网卡数据放到内存中
3.7.3软中断
网卡发给CPU的中断为硬中断,硬中断的响应需要快速完成,而数据包的处理很费时间,因此硬中断不能处理,而是创建一个软中断后续处理。
3.7.4轮询收包
中断+轮询的方式处理网卡数据
3.7.5协议帧
以太网帧的内容经过各层协议解析
3.8绕过操作系统,直接收发数据包
网络监控软件:监控网卡上的数据包
3.8.1万兆流量需求
流量越来越大,监控软件需要提速
当前流程:
存在问题:
a)搬运耗时;b)解析耗时c)CPU切换耗时
3.8.2中断问题
解决问题c)CPU切换耗时,让监控软件的工作线程可以独占CPU
3.8.3超快的抓包技术:DPDK
解决问题a)搬运耗时b)解析耗时,用户态用轮询方式,不走系统协议栈和netifilter,直接在用户态读取,不用搬运——DPDK技术。
3.8.4空转问题
独占cpu但没工作时,DPDK处于休眠状态,有工作时唤醒独占CPU。