张飞软硬开源基于STM32 BLDC直流无刷电机驱动器开发视频套件,👉戳此立抢👈

简谈PCIe的软件配置方式

FPGA学习交流 2019-07-29 09:26 次阅读
大家好,又到了每日学习的时间了,今天我们来聊一聊PCIe的软件配置方式。

       关于PCIe的软件配置和初始化

       PCIe设计出来考虑了和pci兼容问题。所以PCIe的软件配置方式可以沿用PCI的配置方式。当然,由于特殊性,也有自身独特的配置方式。所以PCIe模块的访问方式有如下两种:
       1、  PCI 兼容的配置方式。
       2、  PCI Express enhanced 配置机制。

       PCI兼容方式是在PCI章节已经提过,PCIe与其完全兼容。这里主要描述PCIE高级配置机制。

       PCIe的配置空间

       PCIe的配置空间是兼容PCI的,但是在PCI的基础上增加了不少register。从256增加到4Kbytes的大小。如下图所示,PCIe的配置空间。
1.png 其中,PCIe的配置空可以分成PCI兼容部分和扩展部分。PCI兼容部分在前面256byte区域,完全可以使用PCI配置机制来访问。而扩展部分的register,使用PCI配置方式无法实现,则可以通过PCIe 高级配置方式完成。

       PCIe高级配置机制

       PCIe enhanced configuration mechanism的主要原理是将pcie的所有4K bytes 映射到memory地址上,这样,通过访问memory的方式即可读写PCIE的配置空间。当然,通过此方式读memory时候,最好考虑到4字节对齐的问题,否则有可能出错。

       在正常的访问过程中,可以访问这一部分的memory来配置pcie,而这部分memory在哪里呢?芯片组中会定义一个base address,而base address开始的256MB的空间内则是总线上所有PCIe设备的配置空间对应的register。
2.png 上图是PCIE总线高级配置结构图,很明显可以看出是PCIE配置空间映射的memory空间为[XbaseAddress +0 àXbaseAddress +FFFFFFFh]。那么实际的地址线如何对应呢?如下图所示: 3.png 在程序中的表达和操作是这样的:

       1、计算出PCIe设备配置空间中寄存器的地址:Register address = PCIe_Base + (BusNO * 1MB) + (DeviceNO * 32KB) + (FuncNO* 4KB) + (Reg).

       2、使用memory 读写周期完成register的读写。

       PCIE配置空间register

       详细的register解读,请阅读PCIe  spec或者参考一份X86架构的芯片组datasheet。        

       今天就聊到这里,各位,加油。
收藏 人收藏
分享:

评论

相关推荐

小梅哥FPGA设计思想与验证方法视频教程

刚刚录制了一个fpga开发流程的视频,该视频为投石问路,主要是想听听大家对于小梅哥在录制视频时需要注意的内容以及希望系列
发表于 03-24 00:00 37952次 阅读
小梅哥FPGA设计思想与验证方法视频教程

FPGA在计算加速应用中与GPU有什么区别

FPGA 是一堆晶体管,你可以把它们连接(wire up)起来做出任何你想要的电路。它就像一个纳米级....
的头像 Wildesbeast 发表于 08-17 11:29 154次 阅读
FPGA在计算加速应用中与GPU有什么区别

MIPI项目成果分享

此MIPI项目是用于无人机的MIPI技术,此技术具有使用芯片少,占用资源低、通过速率高等特点。 一、项目结构图 二、实现功...
发表于 08-17 09:25 80次 阅读
MIPI项目成果分享

信号发生器和DA转换 FPGA案例教程

信号发生器和DA转换 FPGA案例教程   
发表于 08-17 09:01 89次 阅读
信号发生器和DA转换 FPGA案例教程

菲数科技以FPGA布局运算加速产业发展

FPGA(Field Programmable Gate Array)即“现场可编程门阵列”,是指一....
发表于 08-16 17:57 67次 阅读
菲数科技以FPGA布局运算加速产业发展

赛灵思将如何携FPGA突围车载集成电路市场

在“血肉横飞”的自动驾驶之战中,车载集成电路也是一股不可忽视的力量。不过,眼下这个市场上最受投资者关....
发表于 08-16 17:53 21次 阅读
赛灵思将如何携FPGA突围车载集成电路市场

紫光同创将大幅增资加速发展FPGA的研发

作为紫光集团从“芯”到“云”战略中芯片板块的重点发展方向,深圳市紫光同创电子有限公司的发展得到了紫光....
发表于 08-16 17:49 21次 阅读
紫光同创将大幅增资加速发展FPGA的研发

FPGA 工程师是青春饭吗?

透过以下薪资待遇的数据可以看出,fpga 工程师不是青春饭,你的工作经验越长薪资待遇越高。(来源猎聘网) ...
发表于 08-16 15:50 70次 阅读
FPGA 工程师是青春饭吗?

用途单一但性能强劲的芯片FPGA将大有可为

与CPU相比,FPGA跟普通消费者的距离有点远,因为它不是面向消费级市场的,主要是给企业市场使用的。
发表于 08-16 14:47 30次 阅读
用途单一但性能强劲的芯片FPGA将大有可为

英特尔为加注FPGA产业而收购Omnitek

据了解,Omnitek的技术在 FPGA 上实现了定制的高性能视觉和人工qy88千赢国际娱乐 (AI) 推理功能,能....
发表于 08-16 14:44 17次 阅读
英特尔为加注FPGA产业而收购Omnitek

国产自主研发的FPGA芯片已经开始批量出货

据悉,紫光同创的FPGA产品可以广泛应用于通信领域,对于华为、中兴等通信设备企业来说,是非常不错的可....
发表于 08-16 14:40 31次 阅读
国产自主研发的FPGA芯片已经开始批量出货

插值滤波器设计-明德扬至简设计与应用FPGA

插值滤波器设计-明德扬至简设计与应用FPGA
发表于 08-16 10:34 77次 阅读
插值滤波器设计-明德扬至简设计与应用FPGA

使用 Python 和 Jupyter 笔记本快速构建基于 FPGA 的设计并进行编程

ADUM3211 使用磁性耦合机制,以高达 1000 kbps 的数据速率跨越隔离栅传输数据。因此,....
的头像 丫丫119 发表于 08-16 10:23 456次 阅读
使用 Python 和 Jupyter 笔记本快速构建基于 FPGA 的设计并进行编程

如何利用ARM和FPGA设计电脑绣花机控制器?

电脑绣花机是随着计算机技术、电子技术、机械加工技术的应用发展而不断发展起来的光、机、电一体化设备。嵌入式系统的发展及研究...
发表于 08-16 08:09 57次 阅读
如何利用ARM和FPGA设计电脑绣花机控制器?

如何使用FPGA实现TCP IP协议

随着通信技术的进步,网络带宽以平均每 6 个月增长 1 倍的速度提高,然而 CPU 运算性能的增长速....
发表于 08-16 08:00 13次 阅读
如何使用FPGA实现TCP IP协议

怎么实现并行控制器?

本文介绍一种使用硬件描述语言VHDL来实现基于Petri网的并行控制器的方法。首先使用Petri网对问题进行建模,并对模型进行分...
发表于 08-16 07:52 9次 阅读
怎么实现并行控制器?

软件无线电设计中选择ASIC、FPGA和DSP需要考虑哪些因素?

ASIC、FPGA和DSP的应用领域呈现相互覆盖的趋势,使设计人员必须在软件无线电结构设计中重新考虑器件选择策略问题。从...
发表于 08-16 07:51 11次 阅读
软件无线电设计中选择ASIC、FPGA和DSP需要考虑哪些因素?

FPGA并行多通道信号产生模块有什么特点?

并行测试的实现途径分为软件方式和硬件方式。用软件方式实现并行测试,关键是对测试任务的分解和调度,但可能会产生竞争或者死锁...
发表于 08-16 06:50 19次 阅读
FPGA并行多通道信号产生模块有什么特点?

怎么实现数字锁相式可调频率源?

频率合成技术是指能由一个高稳定度和准确度的标准参考频率,经过一系列的处理,产生大量离散的具有同一稳定度和准确度的信号频率...
发表于 08-16 06:27 31次 阅读
怎么实现数字锁相式可调频率源?

如何利用AFS600设计太阳能热水器通用控制器?

AFS6001是Actel公司推出的混合信号FPGA芯片,它将模拟ADC、DAC、RC振荡器等嵌入到数字FPGA中。AFS600是...
发表于 08-16 06:25 13次 阅读
如何利用AFS600设计太阳能热水器通用控制器?

英特尔推新款FPGA芯片是i7-8700K性能的100倍

Intel再次隆重介绍了自家的Stratix 10 TX FPGA芯片。这是地球上最快的FPGA芯片....
发表于 08-15 17:53 76次 阅读
英特尔推新款FPGA芯片是i7-8700K性能的100倍

英特尔将大幅降低FPGA的使用门槛

随着数据中心市场的快速增长,围绕着数据中心领域的芯片竞争也变得愈发激烈。为了将数据转化成有对用户价值....
发表于 08-15 17:49 406次 阅读
英特尔将大幅降低FPGA的使用门槛

英特尔Gold 6138P处理器将要整合Arria 10FPGA

Intel正式宣布,以现在准备开始量产Xeon Scalable处理器——Xeon Gold 613....
发表于 08-15 17:46 28次 阅读
英特尔Gold 6138P处理器将要整合Arria 10FPGA

基于FPGA平台推出车规级前装视觉ADAS解决方案

qy88千赢国际娱乐驾驶辅助技术供应商极目qy88千赢国际娱乐(下称“极目”)正式对外发布旗下最新车规级视觉 ADAS 解决方案 J....
发表于 08-15 15:01 41次 阅读
基于FPGA平台推出车规级前装视觉ADAS解决方案

英特尔新出AI工具包将全面提升FPGA能力

在终端侧部署人工qy88千赢国际娱乐,还有着数据处理的实时性更高、低延时,更低的带宽需求的优势。比如在自动驾驶领域,....
发表于 08-15 14:57 20次 阅读
英特尔新出AI工具包将全面提升FPGA能力

FPGA供应商Omnitek被英特尔重金收购

英特尔在全球的业务范围还是非常广泛的,在前几年,英特尔花了167亿美元收购了FPGA市场巨头Alte....
发表于 08-15 14:53 26次 阅读
FPGA供应商Omnitek被英特尔重金收购

FPGA封装不良会导致PCB什么问题

技术的进步使得设计CMOS部件变得容易,其速度与任何ECL一样快设备。
的头像 PCB线路板打样 发表于 08-14 12:30 97次 阅读
FPGA封装不良会导致PCB什么问题

Arduino环境中的FPGA:模块支持预配置和定制IP

现在,全球成千上万的设计人员、工程师、开发人员、DIY 爱好者和创客都在使用 Arduino 开发板....
的头像 丫丫119 发表于 08-14 10:44 1184次 阅读
Arduino环境中的FPGA:模块支持预配置和定制IP

FPGA,PCB工具为什么必须协同工作

为了确保正常的性能,必须执行高速验证,其中包括PCB。
的头像 PCB线路板打样 发表于 08-14 06:52 63次 阅读
FPGA,PCB工具为什么必须协同工作

百度发布基于FPGA的256核心AI云计算加速芯片

百度发布XPU,这是一款256核、基于FPGA的云计算加速芯片。合作伙伴是赛思灵(Xilinx)。百....
发表于 08-13 17:52 371次 阅读
百度发布基于FPGA的256核心AI云计算加速芯片

滕旭云推出我国第一个高功用异构FPGA云效能器

滕旭云宣告推出FPGA云效能器,这是我国第一个高功用异构核算基础设施,以云效能的办法将FPGA扩展到....
发表于 08-13 17:49 35次 阅读
滕旭云推出我国第一个高功用异构FPGA云效能器

Efinix将与三星合作开发Quantum eFPGA

Efinix是一家专注于可编程产品平台和技术的公司,据外媒报道,三星电子宣布将与Efinix公司合作....
发表于 08-13 17:46 52次 阅读
Efinix将与三星合作开发Quantum eFPGA

赛灵思、Solarflare正式合并!

赛灵思今年四月公开宣布的 Solarflare 收购案已经正式完成。
的头像 每日经济新闻 发表于 08-13 16:59 214次 阅读
赛灵思、Solarflare正式合并!

用于FPGA的EDA工具打破了复杂性的僵局

半导体制造业的进步是主要原因因为FPGA越来越受欢迎。只要工程师只使用PLD或FPGA来实现相对简单....
的头像 电子设计 发表于 08-13 16:26 307次 阅读
用于FPGA的EDA工具打破了复杂性的僵局

英特尔发布面向5G网络运营商的FPGA网卡

移动世界大会(MWC 2019)期间,英特尔推出了一款名叫 FPGA PAC N3000 的特殊网卡....
发表于 08-13 14:49 41次 阅读
英特尔发布面向5G网络运营商的FPGA网卡

英特尔推出FPGA网卡以拉开5G竞赛大幕

巴塞罗那通信展最大的亮点就是5G的落地,如果说前两年大家更多的还只是憧憬,那么今年就是实实在在的面向....
发表于 08-13 14:45 27次 阅读
英特尔推出FPGA网卡以拉开5G竞赛大幕

芯片领域两大主角 FPGA和GPU

电子元器件大家接触的会比较多,这一块民用、军用的技术基本都是通用的,但在芯片这个领域有两种比较独特的....
发表于 08-13 14:41 72次 阅读
芯片领域两大主角 FPGA和GPU

FPGA加速卡从芯片到系统的发展历程

在2019年MWC大会的第一天,英特尔又推出了一款针对5G应用的FPGA加速卡PAC N3000。这....
发表于 08-12 17:51 66次 阅读
FPGA加速卡从芯片到系统的发展历程

设计基于FPGA的串行通用异步收发器

UART(Universal Asynchronous Receiver Transmitter通用....
发表于 08-12 17:46 53次 阅读
设计基于FPGA的串行通用异步收发器

FPGA芯片可攻破微软BitLocker的驱动器加密

据外媒报道,安全研究人员发现,他们能够使用简单的30美元FPGA(现场可编程门阵列)芯片攻破微软的B....
发表于 08-12 17:42 51次 阅读
FPGA芯片可攻破微软BitLocker的驱动器加密

学会这些,用FPGA开发板制作音乐盒就是这么简单!

今天,我们为大家整理了一位手工大神的DIY心得
的头像 电子工程技术 发表于 08-12 17:11 211次 阅读
学会这些,用FPGA开发板制作音乐盒就是这么简单!

物联网碎片化使得开发FPGA芯片成本高

近年,国内不少AI初创企业纷纷推出了自己的AI专用芯片,物联网少量多样,是一个非常碎片化的市场。在各....
发表于 08-12 14:39 165次 阅读
物联网碎片化使得开发FPGA芯片成本高

国内FPGA市场发展迅速年均增长10%

FPGA是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,它由输入/输出块、可配置逻....
发表于 08-12 14:34 53次 阅读
国内FPGA市场发展迅速年均增长10%

Aupera携手赛灵思构建FPGA视频云处理平台

Aupera官方消息显示,该公司致力于开发全球领先的视频编解码、内容识别及存储的超融合创新架构,目标....
发表于 08-12 14:26 33次 阅读
Aupera携手赛灵思构建FPGA视频云处理平台

英特尔收购Omnitek为FPGA实现高性能视觉处理

英特尔公司近日宣布收购Omnitek,后者是一家领先的优化视频和视觉FPGA IP解决方案提供商。O....
发表于 08-11 11:46 32次 阅读
英特尔收购Omnitek为FPGA实现高性能视觉处理

AD采样后数据如何在FPGA中转化为有符号数

输入系统的有正有负的模拟信号在AD采样前,会加上了直流偏置变成全正信号才输入AD的,所以在AD采样后....
发表于 08-11 11:43 61次 阅读
AD采样后数据如何在FPGA中转化为有符号数

FPGA技术在自动驾驶的应用

本篇文章,我们将从与自动驾驶的关系、加速中遇到的挑战、量化计算、节约资源和带宽五个方面,介绍 ACU....
发表于 08-10 11:05 115次 阅读
 FPGA技术在自动驾驶的应用

FPGA配置状态字寄存器失败的解决方法

以前在学生时代的时候对于MCU退耦电容的作用理解的并不是很透彻,导致不是很关心退耦电容的放置位置,退....
发表于 08-10 10:59 58次 阅读
FPGA配置状态字寄存器失败的解决方法

在FPGA上如何实现双线性插值的计算

双线性插值顾名思义是线性插值Pro,为了说明白什么是双线性插值,首先得先从线性插值说起。那么什么又是....
发表于 08-09 17:33 85次 阅读
在FPGA上如何实现双线性插值的计算

基于1553B总线和ARINC429总线的数据格式介绍

GJB1553B数据总线采用Manchester编码解码协议,以异步、命令/响应方式执行数据传输,通....
发表于 08-09 15:50 98次 阅读
基于1553B总线和ARINC429总线的数据格式介绍

基于FPGA的ARM并行总线和端口设计

在数字系统的设计中,FPGA+ARM 的系统架构得到了越来越广泛的应用,FPGA主要实现高速数据的处....
发表于 08-08 15:37 105次 阅读
基于FPGA的ARM并行总线和端口设计

FPGA是什么以及它的市场情况

FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL....
发表于 08-08 14:50 131次 阅读
FPGA是什么以及它的市场情况

微芯低功耗FPGA视频、图像处理解决方案

助力客户加速qy88千赢国际娱乐嵌入式视觉设计
的头像 Microchip微芯 发表于 08-08 09:58 306次 阅读
微芯低功耗FPGA视频、图像处理解决方案

CPU、GPU、MCU、FPGA都该如何区分

现代社会芯片是一个大概念,几乎无处不芯片,就连家里照明的LED等都需要外延芯片才能激发二极管发光。所....
发表于 08-07 17:53 215次 阅读
CPU、GPU、MCU、FPGA都该如何区分

关于FPGA面积换速度的实例讲解

在FPGA中,如果要将一个采样率为480MHz,中频频率为302.5MHz的信号变频到零中频的基带信....
发表于 08-07 17:50 96次 阅读
关于FPGA面积换速度的实例讲解

英特尔推出FPGA加速卡助力高性能计算

现在随着GPU通用计算能力增强,一些计算任务已经可以交由GPU去处理了。除了GPU外,现在还有一类芯....
发表于 08-07 17:48 46次 阅读
英特尔推出FPGA加速卡助力高性能计算

FPGA教程之Verilog HDL扫盲文PDF电子书免费下载

会翻开这本笔记的读者,估计你们都受够了参考书的“权威”,即使把厚厚的参考书都啃完了,发觉自己对Ver....
发表于 08-07 17:41 109次 阅读
FPGA教程之Verilog HDL扫盲文PDF电子书免费下载

Intel即将推出Stratix FPGA芯片

Intel又次隆重介绍了自家的Stratix 10 TX FPGA芯片。浮点性能达到10TFLOPS....
发表于 08-07 14:42 66次 阅读
Intel即将推出Stratix FPGA芯片

英特尔推出基于FPGA的全新可编程加速卡

英特尔推出基于Stratix 10 SX FPGA的全新可编程加速卡(PAC),以扩充其FPGA加速....
发表于 08-07 14:35 60次 阅读
英特尔推出基于FPGA的全新可编程加速卡

Xilinx推出业界首款支持第四代PCIe轻量级加速卡——Alveo U50

支持第四代 PCIe的赛灵思首款轻量级加速卡,面向数据中心关键工作负载,在更大吞吐量,更低时延和更高....
发表于 08-07 09:33 112次 阅读
Xilinx推出业界首款支持第四代PCIe轻量级加速卡——Alveo U50

英特尔推出FPGA加速卡D5005助力高性能计算

现在随着GPU通用计算能力增强,一些计算任务已经可以交由GPU去处理了。除了GPU外,现在还有一类芯....
发表于 08-06 17:53 93次 阅读
英特尔推出FPGA加速卡D5005助力高性能计算

TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor

TMP411设备是一个带有内置本地温度传感器的远程温度传感器监视器。远程温度传感器,二极管连接的晶体管通常是低成本,NPN或PNP型晶体管或二极管,是微控制器,微处理器或FPGA的组成部分。 远程精度为±1 °C适用于多个设备制造商,无需校准。双线串行接口接受SMBus写字节,读字节,发送字节和接收字节命令,以设置报警阈值和读取温度数据。 TMP411器件中包含的功能包括:串联电阻取消,可编程非理想因子,可编程分辨率,可编程阈值限制,用户定义的偏移寄存器,用于最大精度,最小和最大温度监视器,宽远程温度测量范围(高达150°C),二极管故障检测和温度警报功能。 TMP411器件采用VSSOP-8和SOIC-8封装。 特性 ±1°C远程二极管传感器 ±1°C本地温度传感器 可编程非理想因素 串联电阻取消 警报功能 系统校准的偏移寄存器 与ADT7461和ADM1032兼容的引脚和寄存器 可编程分辨率:9至12位 可编程阈值限...
发表于 09-19 16:35 62次 阅读
TMP411 ±1°C Programmable Remote/Local Digital Out Temperature Sensor

TMP468 具有引脚可编程的总线地址的高精度远程和本地温度传感器

TMP468器件是一款使用双线制SMBus或I 2 C兼容接口的多区域高精度低功耗温度传感器。除了本地温度外,还可以同时监控多达八个连接远程二极管的温度区域。聚合系统中的温度测量可通过缩小保护频带提升性能,并且可以降低电路板复杂程度。典型用例为监测服务器和电信设备等复杂系统中不同处理器(如MCU,GPU和FPGA)的温度。该器件将诸如串联电阻抵消,可编程非理想性因子,可编程偏移和可编程温度限值等高级特性完美结合,提供了一套精度和抗扰度更高且稳健耐用的温度监控解决方案。 八个远程通道(以及本地通道)均可独立编程,设定两个在测量位置的相应温度超出对应值时触发的阈值。此外,还可通过可编程迟滞设置避免阈值持续切换。 TMP468器件可提供高测量精度(0.75°C)和测量分辨率(0.0 625°C)。该器件还支持低电压轨(1.7V至3.6V)和通用双线制接口,采用高空间利用率的小型封装(3mm×3mm或1.6mm×1.6mm),可在计算系统中轻松集成。远程结支持-55°C至+ 150°C的温度范围。 特性 8通道远程二极管温度传感器精度:±0.75&...
发表于 09-18 16:05 50次 阅读
TMP468 具有引脚可编程的总线地址的高精度远程和本地温度传感器