04 2019 档案
I2C与SMBus
摘要:关于I2C与SMBus,许多人很少去谈论与了解两者的细节差异,包括很多国外的简报,文章也经常将两者混写、交杂描述、交替运用。 确实,在一般运用下,I2C Bus与SMBus没有太大的差别,从实际接线上看也几乎无差异,甚至两者直接相连多半也能相安无误地正确互通并运作。不过若真要仔细探究,其实还是有诸多 阅读全文
posted @ 2019-04-29 11:50 hammerqiu 阅读(1498) 评论(0) 推荐(1)
Linux console 重定向
摘要:Linux从启动到启动完成的所有输出均复制到Com口上,一共需要修改3个文件。在此之前还要确认/sbin/agetty文件是否存在,此文件用来把系统的输入输出映射到其它设备上。 1.首先在 /etc/inittab里面添加如下内容: 最后一行另加一行加上:sc:2345:respawn:/sbin/ 阅读全文
posted @ 2019-04-24 14:12 hammerqiu 阅读(7470) 评论(0) 推荐(0)
Linux debug
摘要:proc文件系统中可以查看一些正在运行的变量如device-tree module_param值修改方法 修改方法 编译时判断宏变量是否定义:编译时打印宏变量 重定义打印宏,显示特定打印结构 有格式的打印,便于分析别人代码 1) VA_ARGS 是一个可变参数的宏,很少人知道这个宏,这个可变参数的宏 阅读全文
posted @ 2019-04-24 13:52 hammerqiu 阅读(1387) 评论(0) 推荐(0)
UEFI EVENT 全解
摘要:Event和Timer在UEFI当中是怎么实现的以及原理,我们先从Timer开始,然后细细的拨开隐藏在底层的实现。 先说Timer,那什么是Timer呢?其实在中文里面我们把它叫做定时/计数器,但是我的理解它不仅仅是一个定时/计数器硬件而是一个被程序设计者设定为工作在特殊模式下的 做定时/计数器 , 阅读全文
posted @ 2019-04-13 15:30 hammerqiu 阅读(4957) 评论(0) 推荐(0)
PCIE错误分析
摘要:前面的文章提到过,PCI总线中定义两个边带信号(PERR#和SERR#)来处理总线错误。其中PERR#主要对应的是普通数据奇偶校检错误(Parity Error),而SERR#主要对应的是系统错误(System Error)。具体如下: · 普通的数据奇偶校检错误——通过PERR#报告 · 在多任务 阅读全文
posted @ 2019-04-11 11:26 hammerqiu 阅读(11782) 评论(1) 推荐(0)
UEFI Shell命令操作总结
摘要:什么是UEFI ShellUEFI Shell是一种特殊对待UEFI_APPLICATION。提供用户和UEFI系统之间的一个接口。它有很强大的功能,但是正常启动计算机系统时,不会用到UEFI Shell,只有当系统启动出现问题,或者用户就是喜欢UEFI Shell(就像博主我一样,深深的爱着UEF 阅读全文
posted @ 2019-04-09 11:13 hammerqiu 阅读(26268) 评论(0) 推荐(1)
PCIe link up bug 分析
摘要:Xilinx两块开发版PCIe link up时间相差很大,Virtex-6开发版PCIe link up时间超过60ms,而Virtex-7 PCIe link up时间只有~25ms. 分析过程: 1. 对比Virtex-6和Virtex-7两块开发板上电过程的LTSSM状态机。 首先看一下,V 阅读全文
posted @ 2019-04-05 10:33 hammerqiu 阅读(3828) 评论(0) 推荐(0)
PCIE4.0 简单介绍
摘要:关于PCI-E的标准,可以从2003年说起,2003年推出了PCI-E 1.0标准,在三年之后就推出了PCI-E 2.0,而在4年后的2010年就推出了PCI-E 3.0,但是在2010年之后的6年里,一直都是沿用了PCI-E3.0标准,在快速发展的科技行业内,感觉可以维持这么久就有些不可思议。 过 阅读全文
posted @ 2019-04-05 10:10 hammerqiu 阅读(15050) 评论(0) 推荐(0)
PCIE 3.0中使用的动态均衡概念
摘要:一、PCIE 3.0中使用的动态均衡概念 因为PCIE 3.0信号的速率可以达到8Gb/s,而且链路通道走线也可能会很长,这可能会导致高速信号衰减过大,在接收端无法得到张开的眼图。因此在PCIE 3.0的Tx和Rx端均使用了均衡设置,以补偿长链路时高速信号的衰减。 但由于实际产品中PCIE 3.0信 阅读全文
posted @ 2019-04-04 11:03 hammerqiu 阅读(9583) 评论(0) 推荐(0)
PCIE training
摘要:在PCIe链路可以正常工作之前,需要对PCIe链路进行链路训练,在这个过程中,就会用LTSSM状态机。LTSSM全称是Link Training and Status State Machine。这个状态机在哪里呢?它就在PCIe总线的物理层之中。 LTSSM状态机涵盖了11个状态,包括Detect 阅读全文
posted @ 2019-04-02 16:55 hammerqiu 阅读(12987) 评论(0) 推荐(2)
PCIe 驱动流程(LTSSM)
摘要:本次的工作是完成刚流片的FPGA中PCIe IP核的bring up,也就是芯片的中PCIe的第一个使用者,将PCIe IP核正常使用起来,并配合公司的EDA团队,完成PCIe IP核到用户的呈现。 经过两个月的调试和文档阅读,对PCIe也有了初步的认识,对于PCIe的学习主要来自3个方面: 1、 阅读全文
posted @ 2019-04-02 16:40 hammerqiu 阅读(7497) 评论(0) 推荐(1)
IIC基本概念和基本时序
摘要:1. IIC基本概念和基本时序 I2C总线是PHLIPS公司推出的一种串行总线,是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高性能串行总线。 1、I2C总线具有两根双向信号线,一根是数据线SDA,另一根是时钟线SCL 2、IIC总线上可以挂很多设备:多个主设备,多个从设备(外围 设备)。 阅读全文
posted @ 2019-04-02 16:29 hammerqiu 阅读(7152) 评论(0) 推荐(0)