【PCIe小知识】PCIe的复位及电压介绍 PCIe总线规定了两大类复位方式,一类是传统复位(Conventional Reset)方式,另一类是FLR(Function-Level Reset)方式。传统复位方式划分为两类,一个是Fundamental Reset,另一个是Non-Fundamental Reset。PCIe提供多种复位方式的主要原因是减少PCIe设备的复位延时,其中传统复位方式的延时大于FLR方式。
【日拱一卒,脚踏实地】一些常用的Linux terminal命令 表示将 test 目录打包成一个zip文件,其中,-r 表示递归打包包含子目录的全部内容,-q 表示安静模式,-o 表示输出文件。:其中,选项–9表示压缩体积最小但耗时最久,而-1表示最快压缩但体积大,-x则是排除已存在的zip文件,注意路径必需为绝对路径。如果你想以其他单位输出内存的使用量,需要加一个选项,-g为GB,-m为MB,-k为KB,-b为字节;:按照正序显示file1中的内容,并以1为开头,对所有非空白行进行编号,与命令。:按照正序显示file1中的内容,并以1为开头,对所有输出行进行编号。
【PCIe小知识】详细解读PCI的配置空间Header 值得注意的是,该寄存器由系统软件设置,但是在PCI设备的运行过程中,只有其硬件逻辑才会使用该寄存器,比如PCI设备的硬件逻辑需要得知处理器系统Cache行的大小,才能进行存储器写并无效总线事务,单行读和多行读总线事务。该寄存器的含义与PCI Agent配置空间的Status寄存器的含义相近,PCI桥的Secondary Status寄存器记录Secondary Bus的状态,而不是PCI桥作为PCI设备时使用的状态。值得注意的是,处理器使用存储器域的地址,而BAR寄存器存放PCI总线域的地址。
【PCIe小知识】PCIe的初始化流程 PCIe EP设备外部会连接许多模块实现上述流程,比如应用层设置app_ltssm_enable和app_hold_phy_rst,一般会通过power_up模块实现。上图为PCIe初始化的基本流程,需要注意的是,配置请求只能有CPU发起,即对应PCIe的RC端(Root Complex)。应用层设置app_hold_phy_rst=1,重新配置PHY的寄存器参数。应用层设置app_ltssm_enable=1,使能PCIe的链路训练。开始应用层传输,完成初始化流程。如GEN3,GEN4的切换等。
【日拱一卒,脚踏实地】如何使用python3脚本生成rtl代码 使用python3处理xlsx表格,首先需要调用openpyxl或者xlrd模块,其使用方法与手动操作Excel文件一样,即先打开工作薄(workbook),再选择工作表(sheet),最后操作单元格(cell)。以上就是获取Excel文件内容的所有相关操作,总的来说比较简单,相比openpyxl,xlrd可以以行为单位或者以列为单位获取工作表中的内容。获取完所有变量后,就可以通过操作列表的方式,填如对应的变量,最后输出rtl文件。通过表格收集不同的变量,可以更加直观、便捷,方便后期代码的迭代更新。
【PCIe小知识】如何区分PCIe协议中的P2P和E2E? 上述三种传输方式,如下图所示:图中,蓝色通道表示点对点(Point to Point)传输;红色通道表示**端对端(End to End)传输;绿色通道表示同级间(Peer to Peer)**传输。
【日拱一卒,脚踏实地】学习一门功能强大的版本管理工具(Git) git log: 查看提交历史,显示从最近到最远的操作日志: 更加直观反映提交的历史信息,如版本分支及合并路线git status:查看跟踪的文件处于什么状态git remote:查看所有已配置的远程仓库:显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL或SSH等。