- 博客(123)
- 资源 (8)
- 收藏
- 关注
转载 DMA、链式DMA、RDMA(精华讲解)
调用pci_map_sg 函数完成离散映射,同时填充sg_table表中每个条目的dma地址,过程如图2.5所示,分为两种情况,在未开启IOMMU时,映射是平行映射,在开启IOMMU后,将会把离散的物理页映射成连续的PCI域空间,但并不会改变条目个数。,将raddr翻译,最后将数据写入对应离散物理页中,注意,这个过程对端的cpu是不知道的(需要本端主动通知对端),完全由RDMA网卡完成,不需要内核参与,在对端的app侧看来,就是有人往某块连续的虚拟内存写了数据。注:从片上内存块依旧是连续物理内存块。
2024-11-05 10:41:05
617
原创 芯片验证中部分语法细节整理(1)
q=q[0:$-1];2)有带语句块和不带语句块两种模式,带语句块的后可接串行/并行块,不带语句块的wait有效后直接往后执行;2)拼接填充可以嵌套,注意重复及嵌套重复的填充元素模式为{n{data}};4、多维动态数组使用new时注意一层层进行分配空间;2)队列的声明使用[$],元素的编号从0到$;1)通常情况下可以直接与数组进行等价使用;1、三目运算符是有结果输出被运用的;1)拼接注意指明位宽,特别是常数;
2024-04-19 15:00:29
228
转载 图解三层交换机:局域网都用它来组网
如果数据帧在进入 trunk port 前,是没有标记的,那么 trunk port 会给它打上 native VLAN 的标记,这个数据帧就以 native VLAN 的身份传输。native VLAN 是可以自定义的,通常是使用 VLAN 1 以外的 VLAN 作为本征 native VLAN ,作为管理 VLAN。当 tagging 完成后,数据帧的最大长度从 1518 字节变成 1522 字节,其中有 12bit 的 VLAN ID 信息,也就是说,最多支持的 VLAN 数是 4096 个。
2023-07-13 17:20:19
2267
转载 扫盲:集线器、网桥、交换机、路由器、网关大解析
集线器的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它工作于OSI参考模型第一层,即“物理层”。集线器与网卡、网线等传输介质一样,属于局域网中的基础设备,采用CSMA/CD(一种检测协议)访问方式。网桥(Bridge)是早期的两端口数据链路层网络设备,用来连接不同网段的计算机网络设备同时它又可隔离冲突域,因为它的两个端口不是共享一条背板总线(分别有一条独立的交换信道),比当时的集线器(Hub)性能更好(集线器上各端口都是共享同一条背板总线的)。
2023-07-13 17:15:41
4017
1
转载 网络编程-网路七层协议图(2)之每一层对应的设备及功能(物理层、数据链路层、网络层、传输层、应用层...)
在OSI参考模型中,物理层(Physical Layer)是参考模型的最低层,也是OSI模型的第一层。物理层的主要功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。物理层的作用是实现相邻计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异。使其上面的数据链路层不必考虑网络的具体传输介质是什么。“透明传送比特流”表示经实际电路传送后的比特流没有发生变化,对传送的比特流来说,这个电路好像是看不见的。
2023-07-13 17:05:12
10999
转载 网络七层模型和对应协议的通俗理解
现在我能发正确的发比特流数据到另一台计算机了,但是当我发大量数据时候,可能需要好长时间,例如一个视频格式的,网络会中断好多次(事实上,即使有了物理层和数据链路层,网络还是经常中断,只是中断的时间是毫秒级别的)。没有这七层的概念,只是人为的划分而已。我发了1万个包出去,另一台电脑就要告诉我是否接受到了1万个包,如果缺了3个包,就告诉我是第1001,234,8888个包丢了,那我再发一次。比如,把数据传输从A到F,不是直接从A到F,而从A开始,中间要经过B,C,D、E,可能有好多节点如K、J、Z、Y。
2023-07-13 16:59:45
759
转载 计算机基础-CPU通识
为了深入了解Python中的进程、多进程、线程、多线程、携程,避不开CPU知识;本人对于硬件知识完全是个小白,对于很多概念性的、基础的组成单元往往需要花费很多时间去了解与学习,了解越多,疑问反而越来越大,疑问越大,就越想去了解,目前陷入死循环了。本文记录近两个星期的学习内容,目前就到这一步了,再不能往下了,否则越走越偏了!...
2022-08-18 15:21:38
347
转载 服务器的软件架构
在介绍BMC之前需要了解一个概念,即平台管理(platform management)。平台管理表示的是一系列的监视和控制功能,操作的对象是系统硬件。比如通过监视系统的温度,电压,风扇、电源等等,并做相应的调节工作,以保证系统处于健康的状态。当然如果系统真的不正常了,也可以通过复位的方式来重新启动系统。同时平台管理还负责记录各种硬件的信息和日志记录,用于提示用户和后续问题的定位。以上的这些功能可以集成到一个控制器上来实现,这个控制器被称为基板管理控制器BMC...
2022-08-18 09:50:48
917
转载 服务器软件firmware的作用(BIOS、BMC、PSOC、CPLD)
服务器 从功能上来讲,跟我们日常学习办公使用的台式机和笔记本没有本质区别,主要也是由最为关键的三大件CPU、内存、硬盘组成,但是服务器的应用场景主要是提供给企业等角色用来支撑形形色色业务,不仅仅是用来安装浏览器访问网页、安装播放器看看电影,因此服务器会使用更强的配置,即更强劲的CPU、更大的内存、更大的硬盘存储。从外形上来说,服务器存在多种外形,如机架式、刀片式、塔式等等,最主要的区别在于服务器一般不会配置显示器、键盘、鼠标等部件用于近端操作,一般通过IP远程连接的方式访问即可。...
2022-08-18 09:25:43
6809
1
转载 SATA补充说明
串口硬盘是一种完全不同于并行ATA的新型硬盘接口类型,由于采用串行方式传输数据而知名。相对于并行ATA来说,就具有非常多的优势。首先,Serial ATA以连续串行的方式传送数据,一次只会传送1位数据。这样能减少SATA接口的针脚数目,使连接电缆数目变少,效率也会更高。实际上,Serial ATA 仅用四支针脚就能完成所有的工作,分别用于连接电缆、连接地线、发送数据和接收数据,同时这样的架构还能降低系统能耗和减小系统复杂性。...
2022-08-18 09:13:05
2448
转载 VCS使用SDF文件进行后仿反标
概述 从概念上来说,数字验证包含两方面的内容,一个是验证功能,另一个是验证时序。对应的仿真模型(不论是model,standard cell等)也不外乎这两个部分,功能部分由逻辑,udp元件或gate构成,时序部分则包括了时序反标和时序检查两小块。 平时我们所说的功能验证,也就是前仿真,实现了对功能进行验证的目的,时序被默认为理想情况,不包含延迟信息。门级仿真,也称为后仿真,除了功能验证外,最主要就是用来检查时...
2022-05-28 16:57:58
2745
转载 uvm中virtual如何使用
概述 virtual 是OOP中的一种关键字,主要体现的是多态。虚函数是指一个类中你希望重载的成员函数 ,当你用一个基类指针或引用指向一个继承类对象的时候,调用一个虚函数时, 实际调用的是继承类的版本。整理了uvm中使用virtual常用的四种情况: virtual interface;virtual class;virtual sequence和virtual sequencer;virtual functi...
2022-05-28 16:54:43
2483
1
转载 数字验证--断言assert
断言是什么? 断言是对设计违例的一种严查,能够在违例时立刻报出错误。 为什么使用断言,断言的优势又有那些呢? 1.断言能够缩短你的开发时间,断言的代码是比较简单的,相比systemverilog能够很好的处理信号的电平和边沿变化的检测。如systemverilog要想实现时钟上升沿时如果FRAME_也是上升沿则2个时钟后LDP_是下降沿有需要开发下图的代码,但是使用断言则非常简单, property ldpcheck; @(posedge clk) $r...
2022-05-28 16:49:23
2903
转载 数字验证测试点分解
概述 测试点实际上是把设计的功能按层级分解成一个个最简单、最底层的功能点,化繁为简,方便测试用例的实现。测试点主要从功能规格(FS)与架构规格(AS)中提取。测试点分解需要保证的几点原则: 完备性,即不能遗漏任何功能点,特别是异常处理,边界处理,容错处理这些往往容易被忽视;低耦合,不同测试点之间的相关性越低越好,这也直接决定了分解粒度,并影响testcase的开发难度;无歧义,测试点的描述要直接而明确,不同测试...
2022-05-28 16:42:25
1104
转载 DMA、链式DMA、RDMA(精华讲解)
一、DMA DMA全称Direct Memory Access,即直接存储器访问。CPU完成传输配置后,即可不在参与传输过程,由DMA控制器将数据从一个地址空间复制到另外一个地址空间。最长见的是本地DMA传输,如图1.1所示。 图1.1 &nbs...
2022-05-25 10:35:25
3266
转载 访问PCIe BAR空间
转:https://blog.youkuaiyun.com/abcamus/article/details/73518752 google了一圈,发现xilinx论坛的一个回答比较好, 链接如下: https://forums.xilinx.com/t5/PCI-Express/PCI-express-Base-Address-Register/td-p/685289 里面讲了如何访问BAR指定的mem空间。 下面对BAR空间以及配置空间的访问做一个系统的总结,其实就是在回答以下几个问
2021-09-11 10:40:02
1410
转载 GenZ,CXL,NVLINK,OpenCAPI,CCIX乱战
原文链接:http://www.sohu.com/a/306325058_671230纵观数据中心业界,底层技术方面其实正处在一场架构变革的初始点,这场变革就是I/O总线的网络化以及I/O资源的大规模池化。众所周知,在开放平台下,PCIE是目前高性能I/O设备普遍采用的总线类型,目前已经到Gen4,很快会到Gen5。但是PCIE总线的树形拓扑以及有限的设备标识ID号码范围,导致其无法形成一个大规模网络,这个问题在NVMe盘未普及之前显得不那么是个问题,但是NVMe盘得道广泛应用之后,会占用大量的PCIE
2021-09-11 10:39:47
1594
转载 PCIe扫盲——PCIe演进方向?CCIX简介
转:http://blog.chinaaet.com/justlxy/p/5100064709 摩尔定律逐渐降速,业界需要一同寻找提升计算性能、同时保持低功耗的方法。CCIX联盟的成立旨在实现一种新型互联,专注于新兴的加速应用,如机器学习、网络处理、存储卸载、内存数据库和4G/5G 无线技术。这个标准使得基于不同指令集的处理器,将缓存一致性、对等计算的优势扩展至许多加速设备包括FPGA、GPU、网络或存储适配器、智
2021-09-11 10:39:19
1018
转载 PCIe扫盲——M-PCIe与MIPI M-PHY
转:http://blog.chinaaet.com/justlxy/p/5100064718 M-PCIe即Mobile PCIe,主要应用对象是智能手机等嵌入式设备。PCI-SIG在PCIe Spec V3.1中引入基于MIPI M-PHY v2.0的M-PCIe。相比于标准的PCIe总线,M-PCIe主要的改动在物理层如下图所示。引入M-PHY,旨在获得更低的功耗以适应于嵌入式设备的低功耗要求。 M-P
2021-09-11 10:39:07
1599
转载 PCIe扫盲——关于PCIe参考时钟的讨论
转:http://blog.chinaaet.com/justlxy/p/5100065655 本文来聊一聊PCIe系统中的参考时钟,主要参考资料为PCIe Base Spec和CEM Spec。在1.0a和1.1版本的PCIe Base Spec中并没有详细的关于参考时钟的描述,而是在与之对应的CEM Spec中提及。从V2.0版的PCIe Base Spec开始,在物理层电气子层章节中增加了参考时钟相关的内容,
2021-09-11 10:38:55
10032
转载 推荐两个实用的PCIe工具软件
转:http://blog.chinaaet.com/justlxy/p/5100065652本文向大家推荐两个实用的PCIe相关的工具软件,Mindshare的Arbor和Teledyne LeCroy的TeleScan PE。Mindshare ArborMindshare是一家专业的第三方硬件系统培训公司,主要方向为PCI Express、M-PCIe、NVMe、USB、ARM Architecture、DDRx/LPDDRx、Intel Haswell/Broadell、Intel Mob
2021-09-11 10:38:40
12383
3
转载 PCIe中的Crosslink与Multi-Root/Multi-Processor系统
转:http://blog.chinaaet.com/justlxy/p/5100065650 在PCIe总线中,Switch是一个特殊的设备,该设备由1个上游端口和2~n个下游端口组成。PCIe总线规定,在一个Switch中可以与RC直接或者间接相连的端口为上游端口,在PCIe总线中,RC的位置一般在上方,这也是上游端口这个称呼的由来。在Switch中除了上游端口外,其他所有端口都被称为下游端口。下游端口一般与E
2021-09-10 12:39:11
853
转载 PCIe扫盲——基于WinDriver快速开发PCIe驱动简明教程
转:http://blog.chinaaet.com/justlxy/p/5100064256 本文将简要介绍如何使用Jungo公司的WinDriver工具快速开发PCI Express设备驱动,以及相关注意事项。本文所使用的的测试平台信息如下: ※操作系统:Win7 SP1 64bit ※驱动开发工具:WinDriver12.1 ※应用程序开发工具:MSVS2012 ※PCIe测试板卡:Lattice
2021-09-10 12:37:41
3940
转载 PCIe扫盲——PCIe总线性能评估(有效数据速率估算)
转:http://blog.chinaaet.com/justlxy/p/5100062236 前面的文章提到过PCIe总线(Gen1&Gen2)采用了8b/10b编码,因此其有效数据速率为物理线路上的速率的80%。即Gen1的有效速率为2.0Gbps=2.5Gbps*80%,而Gen2的有效速率为4Gbps=5Gbps*80%。 如果以数据包的Data Payload为真实有效数据,来计算得话,实际应用
2021-09-10 12:36:08
1302
转载 PCIe扫盲——PCIe卡Spec(CEM)导读
转:http://blog.chinaaet.com/justlxy/p/5100061925 前面的文章介绍过,PCIe总线除了有Base Spec,还有关于PCIe卡的Spec(又称为CEM Spec,全称为PCI Express Card Electromechanical Specification)。该Spec主要内容包括辅助信号(Auxiliary Signals)、热插拔(Add-in Card Ho
2021-09-10 12:34:39
7458
转载 PCIe扫盲——Power Management概述(二)——链路唤醒与PME产生
转:http://blog.chinaaet.com/justlxy/p/5100061891 链路唤醒机制可以让处于非D0状态的Endpoint,通过唤醒来请求Root(软件层)让其返回D0状态。PCIe PM的软件层和PCI PM是兼容的,尽管其硬件实现方式并非完全相同。PCI PM的唤醒机制是通过一个边带信号来实现的,而PCIe PM还支持一种inband的PME消息(Power Management Eve
2021-09-10 12:32:55
2323
转载 PCIe扫盲——Power Management概述(一)
转http://blog.chinaaet.com/justlxy/p/5100061872 PCIe总线定义的与功耗管理功能(Power Management,PM)相关的主要有:PCI-Compatible PM、Native PCIe Extensions、Bandwith Management和Event Timing Optimization。 其中,PCI-Compatible PM是一种在软件上和硬
2021-09-10 12:29:12
2051
转载 PCIe扫盲——弹性缓存(Elastic Buffer/ CTC Buffer)
转http://blog.chinaaet.com/justlxy/p/5100057990 前面在介绍PCIe物理层逻辑子层的文章中,有提到过弹性缓存(Elastic Buffer,又称为CTC Buffer或者Synchronization Buffer)。其本质上是一种FIFO,主要用于解决跨时钟域问题。当然,PCIe的弹性缓存还用于补偿时钟误差(Compensate for the clock differ
2021-09-10 12:29:01
1040
转载 PCIe扫盲——PCI Express物理层接口(PIPE)
转http://blog.chinaaet.com/justlxy/p/5100057941 PCIe物理层接口(Physical Interface for PCI Express,PIPE)定义了物理层中的,媒介层(Media Access Layer,MAC)和物理编码子层(Physical Coding Sub-layer,PCS)之间的统一接口,旨在为提供一种统一的行业标准。如下图所示: 其中MAC
2021-09-10 12:28:53
4134
转载 PCIe扫盲——热插拔简要介绍
转http://blog.chinaaet.com/justlxy/p/5100057851 某些特殊的应用场合可能要求PCIe设备能够以高可靠性持续不间断运行,为此,PCIe总线采用热插拔(Hot Plug)和热切换(Hot Swap)技术,来实现不关闭系统电源的情况下更换PCIe卡设备。 注:热切换(Hot Swap)和热插拔的主要区别是应用领域不同,热插拔主要应用于PC以及服务器的主板上的板卡连接,而热切换
2021-09-10 12:28:43
5347
转载 微电子/半导体/芯片设计网络资源搜集分享
转:https://blog.youkuaiyun.com/wonder_coole/article/details/119208222 自己浏览到不错的网络资源,都会放入收藏夹,并在这里分享。ps,随时添加(●'◡'●) 半导体新闻资讯 https://www.eetimes.com/ EETIMES英文版https://semiengineering.com/ 芯片技
2021-09-09 09:21:08
333
1
转载 PCIe扫盲——复位机制介绍(FLR)
转http://blog.chinaaet.com/justlxy/p/5100057845 PCIe总线自V2.0加入了功能层复位(Function Level Reset,FLR)的功能。该功能主要针对的是支持多个功能的PCIe设备(Multi-Fun PCIe Device),可以实现只对特定的Function复位,而其他的Function不受影响。当然,该功能是可选的,并非强制的,软件可以通过查询配置空间中
2021-09-08 08:57:23
1205
转载 PCIe扫盲——复位机制介绍(Fundamental & Hot)
转http://blog.chinaaet.com/justlxy/p/5100057844 PCIe总线中定义了四种复位名称:冷复位(Cold Reset)、暖复位(Warm Reset)、热复位(Hot Reset)和功能层复位(Function-Level Reset,FLR)。其中FLR是PCIe Spec V2.0加入的功能,因此一般把另外三种复位统称为传统的复位方式(Conventional Reset
2021-09-08 08:57:15
1026
转载 PCIe扫盲——中断机制介绍(MSI-X)
转http://blog.chinaaet.com/justlxy/p/5100057843 PCI总线自3.0版本开始支持MSI-X机制,对MSI做出了一些升级和改进,以克服MSI机制的三个主要的缺陷: 1. 随着系统的发展,对于特定的大型应用,32个中断向量不够用了(参考前一篇文章); 2. 只有一个目标地址使得
2021-09-08 08:57:08
524
转载 PCIe扫盲——中断机制介绍(MSI)
转http://blog.chinaaet.com/justlxy/p/5100057842 前面的文章中介绍过,MSI本质上是一种Memory Write,和PCIe总线中的Message概念半毛钱关系都没有。并且,MSI的Data Payload也是固定的,始终为1DW。 由于MSI也是从PCI总线继承而来的,因此MSI相关的寄存器也存在于配置空间中的PCI兼容部分(前256个字节)。如下图所示,MSI有四种
2021-09-08 08:57:00
1579
转载 PCIe扫盲——中断机制介绍(INTx)
转http://blog.chinaaet.com/justlxy/p/5100057841 一个简单的PCI总线INTx中断实现流程,如下图所示。 1. 首先,PCI设备通过INTx边带信号产生中断请求,经过中断控制器(Interrupt Controller,PIC)后,转换为INTR信号,并直接发送至CPU; 2. &nbs
2021-09-08 08:56:52
2217
转载 PCIe扫盲——两种中断传递方式
转http://blog.chinaaet.com/justlxy/p/5100057840 为了能够让一些优先级高的事务得到优先处理,PCI总线支持外设中断用以提高总线性能。PCIe总线继承了PCI总线的所有中断特性(包括INTx和MSI/MSI-X),以兼容早期的一些PCI应用层软件。本次连载的文章只是简单的介绍PCIe中断的一些基本概念和特性,如需深入了解PCI/PCIe总线的中断内容,请参阅PCI/PCI-
2021-09-08 08:56:39
414
转载 PCIe扫盲——高级错误报告AER(二)
转:http://blog.chinaaet.com/justlxy/p/5100057839 这一篇文章讲一讲,高级错误报告(Advanced Error Reporting,AER)关于可校正和不可校正错误的相关寄存器,以及Root如何处理来自其他PCIe设备的错误消息等内容。 Ø 高级可校正错误处理(Advanced Correctable Error Handling) o &nb
2021-09-08 08:56:30
3381
Open NAND Flash Interface Specification Revision 5.1
2022-12-13
LabVIEW-Real-Time-Module-User-Manual.pdf
2021-09-08
STM32固件库使用手册_v3.5版本.pdf
2021-09-08
FreeRTOSv10.1.1
2018-12-06
ARM嵌入式Linux+系统构建与驱动开发范例
2018-12-06
STM32L-硬件开发手册
2018-06-28
STM32L15X datasheet
2018-06-28
Xilinx FPGA设计权威指南.pdf
2018-04-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人