Documentation/fmc/FMC-and-SDB.txt

2024-06-22 07:38
文章标签 txt documentation fmc sdb

本文主要是介绍Documentation/fmc/FMC-and-SDB.txt,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

如果想评论或更新本文的内容,请直接联系原文档的维护者。


如果你使用英文交流有困难的话,也可以向中文版维护者求助。


如果本翻译更新不及时或者翻译存在问题,请联系中文版维护者。


中文版维护者: 陶莹莉  tyl18768122426@163.com


中文版翻译者:  陶莹莉  tyl18768122426@163.com


中文版校译者:  陶莹莉  tyl18768122426@163.com


FMC (FPGA Mezzanine Card) is the standard we use for our I/O devices,
in the context of White Rabbit and related hardware.


FMC(FPGA夹层卡)是我们使用I/O设备的标准,在White Rabbit以及相关硬件的上下文环境下。


In our I/O environments we need to write drivers for each mezzanine
card, and such drivers must work regardless of the carrier being used.
To achieve this, we abstract the FMC interface.


在我们的I/O环境,我们需要为每个夹层卡编写驱动程序,这些驱动程序必须工作无论是否正在被使用。
为了实现这一目标,我们将FMC接口抽象。


We have a carrier for PCI-E called SPEC and one for VME called SVEC,
but more are planned.  Also, we support stand-alone devices (usually
plugged on a SPEC card), controlled through Etherbone, developed by GSI.


我们有一个称为SPEC的PCI-E载体和VME的一个被称为SVEC但更多的正在规划中。此外,我们支持单机设备
(通常是插入一个SPEC卡),通过GSI开发的Etherbone控制。


Code and documentation for the FMC bus was born as part of the spec-sw
project, but now it lives in its own project. Other projects, i.e.
software support for the various carriers, should include this as a
submodule.


FMC总线的代码和文档是作为spec-sw项目的一部分诞生的,但现在生存自己的项目中。其他项目,即
软件支持的各种载体,作为一个子模块应包括这个。


The most up to date version of code and documentation is always
available from the repository you can clone from:


        git://ohwr.org/fmc-projects/fmc-bus.git (read-only)
        git@ohwr.org:fmc-projects/fmc-bus.git (read-write for developers)


最新版本的代码和文档是始终可用的,从知识库你可以克隆以下:
 git://ohwr.org/fmc-projects/fmc-bus.git (只读)
        git@ohwr.org:fmc-projects/fmc-bus.git (开发者可读和写)

Selected versions of the documentation, as well as complete tar
archives for selected revisions are placed to the Files section of the
project: `http://www.ohwr.org/projects/fmc-bus/files'


选择文档的版本,以及供选择的档案版本文件都放在部分项目中
: `http://www.ohwr.org/projects/fmc-bus/files'


What is FMC
***********
什么是FMC
***********


FMC, as said, stands for "FPGA Mezzanine Card". It is a standard
developed by the VME consortium called VITA (VMEbus International Trade
Association and ratified by ANSI, the American National Standard
Institute.  The official documentation is called "ANSI-VITA 57.1".


FMC,据说全称是“FPGA夹层卡”。这是一个由VME财团称为VITA(VMEbus国际贸易开发
协会和美国国家标准(ANSI)研究所批准。)的标准,官方文档被称为“ANSI-VITA57.1”。


The FMC card is an almost square PCB, around 70x75 millimeters, that is
called mezzanine in this document.  It usually lives plugged into
another PCB for power supply and control; such bigger circuit board is
called carrier from now on, and a single carrier may host more than one
mezzanine.


FMC卡几乎是个方形的印刷电路板,70x75毫米左右,在本文档中称为夹层。它通常插入
另一个PCB的电源和控制器,从现在开始,这种更大的电路板被称为载波,单载波可托管多个
夹层。


In the typical application the mezzanine is mostly analog while the
carrier is mostly digital, and hosts an FPGA that must be configured to
match the specific mezzanine and the desired application. Thus, you may
need to load different FPGA images to drive different instances of the
same mezzanine.


夹层的典型应用大多是模拟当载体主要是数字并且寄主的FPGA的配置必须和特定的夹层
和所需的应用匹配。因此,你可能需要加载不同的FPGA图像来驱动同一夹层的不同实例。


FMC, as such, is not a bus in the usual meaning of the term, because
most carriers have only one connector, and carriers with several
connectors have completely separate electrical connections to them.
This package, however, implements a bus as a software abstraction.


FMC诸如此类,在通常意义上不是总线,因为大多数载体只有一个连接器,有几个
连接器的载体具有完全独立的电器连接到他们。然而,这个包,实现了总线作为一种软件抽象。


What is SDB
***********


什么是SDB
***********
SDB (Self Describing Bus) is a set of data structures that we use for
enumerating the internal structure of an FPGA image. We also use it as
a filesystem inside the FMC EEPROM.


SDB(总线自我描述)是一组我们用来列举FPGA的内部结构成像的数据结构。
我们还用它作为在FMC只读存储器的文件系统。


SDB is not mandatory for use of this FMC kernel bus, but if you have SDB
this package can make good use of it.  SDB itself is developed in the
fpga-config-space OHWR project. The link to the repository is
`git://ohwr.org/hdl-core-lib/fpga-config-space.git' and what is used in
this project lives in the sdbfs subdirectory in there.


SDB不强制使用这种FMC内核总线,但如果你有SDB这个软件包,你可以好好利用它。
SDB本身是建立在FPGA的配置空间上。链接库是` git://ohwr.org/hdl-core-lib/fpga-config-space.git”,
在这个项目中使用的是存在在sdbfs目录中的。


SDB support for FMC is described in *note FMC Identification:: and
*note SDB Support::


FMC的SDB支持在*注意 FMC识别::和*注意SDB的支持::中描述


SDB Support
***********


SDB的支持
***********


The fmc.ko bus driver exports a few functions to help drivers taking
advantage of the SDB information that may be present in your own FPGA
memory image.


fmc.ko的总线驱使一些功能来帮助利用SDB信息,这可能在你当前的FPGA存储图像中。


The module exports the following functions, in the special header
<linux/fmc-sdb.h>. The linux/ prefix in the name is there because we
plan to submit it upstream in the future, and don't want to force
changes on our drivers if that happens.


该模块输出以下功能,在特殊的头文件< Linux / FMC SDB。”。名称中的linux/ prefix
是因为我们计划在未来向上提交,如果那事发生,不想迫使我们的驱动发生变化。


         int fmc_scan_sdb_tree(struct fmc_device *fmc, unsigned long address);
         void fmc_show_sdb_tree(struct fmc_device *fmc);
         signed long fmc_find_sdb_device(struct sdb_array *tree, uint64_t vendor,
                                         uint32_t device, unsigned long *sz);
         int fmc_free_sdb_tree(struct fmc_device *fmc);
 
int fmc_scan_sdb_tree(struct fmc_device *fmc, unsigned long address);
         void fmc_show_sdb_tree(struct fmc_device *fmc);
         signed long fmc_find_sdb_device(struct sdb_array *tree, uint64_t vendor,
                                         uint32_t device, unsigned long *sz);
         int fmc_free_sdb_tree(struct fmc_device *fmc);

这篇关于Documentation/fmc/FMC-and-SDB.txt的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1083680

相关文章

Python按条件批量删除TXT文件行工具

《Python按条件批量删除TXT文件行工具》这篇文章主要为大家详细介绍了Python如何实现按条件批量删除TXT文件中行的工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.简介2.运行效果3.相关源码1.简介一个由python编写android的可根据TXT文件按条件批

Python脚本:TXT文档行数统计

count = 0 #计数变量file_dirs = input('请输入您要统计的文件根路径:')filename = open(file_dirs,'r') #以只读方式打开文件file_contents = filename.read() #读取文档内容到file_contentsfor file_content in file_contents:

mysql中导入txt文件数据的操作指令

1 表tt的格式:    CREATE TABLE `tt` (   `ind` int NOT NULL auto_increment,   `name` char(100) default NULL,   PRIMARY KEY  (`ind`)  )   2 文件d.txt的内容示例:  1,a  2,b  3,c

【python txt合并】python合并同一个文件夹下所有txt文件

一、需求分析 合并一个文件夹下所有txt文件 二、合并效果 三、python实现代码 # -*- coding:utf-8*-import sysreload(sys)sys.setdefaultencoding('utf-8')import osimport os.pathimport timetime1=time.time()##############

【自然语言处理 词库建设】怎样将搜狗的细胞词库scel格式转化成txt格式

搜狗词库:https://pinyin.sogou.com/dict/ 1、先下载搜狗词库到本地,文件格式为.scel后缀 2、利用python3 自动转换成txt python3版本: # -*- coding:utf-8 -*-import structimport os# 由于原代码不适用python3且有大量bug# 以及有函数没有必要使用且一些代码书写不太规范或冗余#在原有

python中使用FormatDataLibsvm转为txt文件后报错illegal multibyte sequence

‘gbk’ codec can’t decode byte 0xff in position 0: illegal multibyte sequence 这个报错是因为编码不对,正确的编码是ANSI编码,txt文件打开后另存为可以看到当前的文本文档编码 但是excel不能直接保存ANSI编码的txt文件 所以不能直接保存为ANSI编码 有两种解决办法 1.新建一个txt文件(新建的txt文件

向MySQL数据库表内导入txt和csv文件数据

本文总结了在CentOS7上使用 LOAD DATA <LOCAL> INFILE 语句向MySQL8.0数据库导入txt文件和csv文件数据的方法和遇到的错误。由于两者方法一样,就先介绍导入txt文件的操作和错误,csv的直接在最后附上命令和简要说明。 原始数据 nameownerspeciessexbirthdeathFluffyHaroldcatf1993-02-04 ClawsGwen

vs2017 Qt CMakeList.txt添加生成Qt LinguistTools的ts文件

#Qt国际化生成ts文件set(TS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/Resource/Translations")set(TS_FILES"${TS_DIR}/${PROJECT_NAME}_zh_CN.ts""${TS_DIR}/${PROJECT_NAME}_en.ts")find_program(LUPDATE_EXECUTABLE lupdate

导出硬盘所有文件名到txt文本文件——C#学习笔记

下面的示例演示如何使用递归遍历目录树。递归方法很简洁,但如果目录树很大且嵌套很深,则有可能会引起堆栈溢出异常。 对于所处理的特定异常以及在每个文件和文件夹上执行的特定操作,都只是作为示例提供。您应该修改此代码来满足自己特定的需要。有关更多信息,请参见代码中的注释。 如下图所示:  附代码如下: using System;namespace 创建人族{public class Recu

太速科技-基于Kintex-7 XC7K325T的FMC USB3.0四路光纤数据转发卡

基于Kintex-7 XC7K325T的FMC USB3.0四路光纤数据转发卡 一、板卡概述   本板卡基于Xilinx公司的FPGAXC7K325T-2FFG900 芯片,pin_to_pin兼容FPGAXC7K410T-2FFG900 ,支持64bit DDR3容量2GByte,USB3.0接口,HPC的FMC连接器,4路光纤接口,板卡支持各种接口输入,USB3.0软件具有