To install RIFFA, find the instructions in the install directory for your
os. The source directory contains all the source code for the drivers, sample
applications, etc.
You can get started with your HDL design using a sample from the FPGA directory.
It contains example HDL designs with corresponding example software.
For further details, see the RIFFA website at: riffa.ucsd.edu
Release notes:
Version 2.2.2
-------------
- Fixed: Unsigned Windows Driver (Commit: 4e989fc)
- Fixed: A bug in the clock-crossing interface where a low-frequency user
clock (<40 MHz) could cause incorrect channel behavior. (Commit: 778c42e)
- Fixed: Support for 64-bit pointers in Python 3. Shout out to
@jrobrien (Commit: af7c592)
- Fixed: Includes in linux driver. linux/slab.h was not included in
riffa_driver.c (Commit: cd494e1)
- Fixed: Capability backwards/forwards compatibility issues to support Linux
for Tegra. (Commit: 1d228c1)
- New: Support for new get_user_pages API in the linux kernel. Shout out to
@marzoul (Commit: TBD)
- Removed: Non-Qsys DE5 Board Example Designs (QSys > IP Generator)
@marzoul (Commit: TBD)
Version 2.2.1
-------------
- New: Reset logic for the Engine layer to handle RIFFA induced resets
- New: Stability/multi-thread-concurrency warnings in the Linux driver
(Shoutout to @marzoul)
- Fixed: A bug in the Linux Driver that prevented compilation on older kernels
- Fixed: Windows driver issue for back-to-back small transfers (See 2.2.0)
- Fixed: WORD_ENABLE bug fix for the Classic Xilinx (VC707, ZC706, AC701,
KC705) 128-bit interface
- Fixed: TX Engine Buffer sizing (high-bandwidth transfers occasionally had
corruption)
- Fixed: RX Engine rx_st_valid bug fix for Altera IP Compiler for PCI express
(Cyclone IV, Stratix IV)
Version 2.2.0
-------------
- RIFFA 2.2.0 is a transitional release. New architectures have been added, and
old architectures have been temporarily shelved.
- Temporarily removed support for Stratix 6 and 32-bit interfaces. (Use RIFFA
2.1.0 for now)
- Temporarily removed ML605 example design (Timing problems - Use RIFFA 2.1.0
for now)
- Added Support for the new Gen3 Integrated Block for PCIe Express, and the
VC709 Development board.
- Added ZC706 Example Designs
- Re-wrote and refactored various parts of the TX and RX engines to maximize
code reuse between different vendors and PCIe endpoint implementations
- Fixed: A bug in the Linux Driver that prevented compilation on older kernels
- Bug: Windows driver causes crash if back to back small transfers are issued
(Fixed with workaround that disables I/O cancellation of in-flight transfers.)
Version 2.1.0
-------------
- Added reorder_queue and updated many rx/tx engine and channel modules that
use it.
- Added parameters for number of tags to use and max payload length for sizing
RAM for reorder_queue.
- Fixed: Bug in the riffa_driver.c, too few circular buffer elements.
- Fixed: Bug in the riffa_driver.c, bad order in which interrupt vector bits
were processed. Can cause deadlock in heavy use situations.
- Fixed: Bug in the tx_port_writer.v, maxlen did not start with a value of 1.
Can cause deadlock behavior on second transfer.
- Fixed: Bug in the rx_port_reader.v, added delay to allow FIFO flush to
propagate.
- Fixed: Bug in rx_port_xxx.v, changed to use FWFT FIFO instead of existing
logic that could cause CHNL_RX_DATA_VALID to drop for a cycle after CHNL_RX
dropped even when there is still data in the FIFO. Can cause premature
transmission termination.
- Changed rx_port_channel_gate.v to use FWFT FIFO.
- Removed unused signal from rx_port_requester_mux.v.
- Fixed: Typo/bug that would attempt to change state within
tx_port_monitor_xxx.v.
- Added flow control for receive credits to avoid over driving upstream transactions
(applies to Altera devices).
Version 2.0.2
-------------
- Fixed: Bug in Windows and Linux drivers that could report data sent/received
before such data was confirmed.
- Fixed: Updated common functions to avoid assigning input values.
- Fixed: FIFO overflow error causing data corruption in tx_engine_upper and
breaking the Xilinx Endpoint.
- Fixed: Missing default cases in rx_port_reader, sg_list_requester,
tx_engine_upper, and tx_port_writer.
- Fixed: Bug in tx_engine_lower_128 corrupting s_axis_tx_tkeep, causing Xilinx
PCIe endpoint core to shut down.
- Fixed: Bug in tx_engine_upper_128 causing incomplete TX data timeouts.
- Changed rx_engine to not block on non-posted TLPs. They're added to a FIFO and
serviced in order.
- Reset rx_port FIFOs before a receive transaction to avoid data corruption from
replayed TLPs.
Version 2.0.1
-------------
- RIFFA 2.0.1 is a general release. This means we've tested it in a number of
ways. Please let us know if you encounter a bug.
- Neither the HDL nor the drivers from RIFFA 2.0.1 are backwards compatible with
the components of any previous release of RIFFA.
- RIFFA 2.0.1 consumes more resources than 2.0 beta. This is because 2.0.1 was
rewritten to support scatter gather DMA, higher bandwidth, and appreciably
more signal registering. The additional registering was included to help meet
timing constraints.
- The Windows driver is supported on Windows 7 32/64. Other Windows versions
can be supported. The driver simply needs to be built for that target.
- Debugging on Windows is difficult because there exists no system log file.
Driver log messages are visible only to an attached kernel debugger. So to see
any messages you'll need the Windows Development Kit debugger (WinDbg) or a
small utility called DbgView. DbgView is a standalone kernel debug viewer that
can be downloaded from Microsoft here:
http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx
Run DbgView with administrator privileges and be sure to enable the following
capture options: Capture Kernel, Capture Events, and Capture Verbose Kernel
Output.
- The Linux driver is supported on kernel version 2.6.27+.
- The Java bindings make use of a native library (in order to connect Java JNI
to the native library). Libraries for Linux and Windows for both 32/64 bit
platforms have been compiled and included in the riffa.jar.
- Removed the CHNL_RX_ERR signal from the channel interface. Error handling now
ends the transaction gracefully. Errors can be easily detected by comparing
the number of words received to the CHNL_RX_LEN amount. An error will cause
CHNL_RX will go low prematurely and not provide the advertised amount of data.
- Fixed: Bug in sg_list_requester which could cause an unbounded TLP request.
- Fixed: Bug in tx_port_buffer_128 which could stall the TX transaction.
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
riffa_2.2.2 (357个子文件)
etc.modules.bak 17B
install.bat 1KB
win7install.bat 242B
VC709_Gen2x8If128_CLK.bit 27.4MB
VC709_Gen1x8If64_CLK.bit 27.4MB
NetFPGA_Gen3x4If128.bit 27.4MB
NetFPGA_Gen2x8If128.bit 27.4MB
ADM7V3_Gen2x8If128.bit 27.4MB
ADM7V3_Gen3x4If128.bit 27.4MB
NetFPGA_Gen1x8If64.bit 27.4MB
ADM7V3_Gen1x8If64.bit 27.4MB
VC709_Gen2x8If128.bit 27.4MB
VC709_Gen3x4If128.bit 27.4MB
VC709_Gen1x8If64.bit 27.4MB
VC707_Gen2x8If128.bit 19.33MB
VC707_Gen1x8If64.bit 19.33MB
ZC706_Gen2x4If128.bit 12.7MB
ZC706_Gen1x4If64.bit 12.7MB
KC705_Gen2x8If128.bit 10.91MB
KC705_Gen1x8If64.bit 10.91MB
AC701_Gen2x4If128.bit 9.28MB
AC701_Gen1x4If64.bit 9.28MB
riffa.c 67KB
riffa_driver.c 50KB
testutil.c 16KB
riffa.c 13KB
riffa.c 13KB
circ_queue.c 6KB
testutil.c 5KB
testutil.c 5KB
jriffa.c 5KB
riffa.c 3KB
testutil.c 3KB
testutil.c 3KB
testutil.c_multi 5KB
riffa.def 198B
riffa.def 198B
dirs 17B
libjriffa.dll 253KB
libjriffa.dll 45KB
riffa.dll 45KB
riffa.dll 14KB
setup_dbg.exe 5.12MB
setup.exe 5.12MB
testutil.exe 271KB
testutil.exe 52KB
riffa.exp 1KB
riffa.exp 1KB
riffa_private.h 6KB
riffa.h 6KB
riffa.h 6KB
riffa.h 6KB
riffa.h 6KB
riffa.h 5KB
riffa_driver.h 5KB
circ_queue.h 4KB
timer.h 2KB
timer.h 2KB
timer.h 2KB
jriffa.h 2KB
trace.h 1KB
riffa_driver.h 796B
riffa_driver.h 791B
riffa_driver.h 791B
precomp.h 450B
timer.h 286B
timer.h 286B
makefile.inc 1KB
riffa.inx 3KB
win7.iss 4KB
riffa.jar 108KB
Fpga.java 9KB
FpgaInfo.java 6KB
NativeLibLoader.java 5KB
SampleApp.java 2KB
riffa.lib 4KB
riffa.lib 2KB
riffa.lib 2KB
riffa.lib 2KB
Riffa.m 11KB
Makefile 6KB
Makefile 3KB
Makefile 3KB
Makefile 3KB
makefile 249B
MANIFEST 76B
testutil.o 24KB
testutil.o 10KB
RIFFA_2.2.2_Instructions.pdf 3.04MB
riffa.py 7KB
setup.py 4KB
sampleapp.py 481B
DE4Gen2x8If128.qpf 1KB
DE5QGen2x8If128_CLK.qpf 1KB
DE5QGen1x8If64_CLK.qpf 1KB
DE5QGen2x8If128.qpf 1KB
DE2Gen1x1If64.qpf 1KB
DE5QGen3x4If128.qpf 1KB
DE5QGen1x8If64.qpf 1KB
DE4Gen1x8If64.qpf 1KB
共 357 条
- 1
- 2
- 3
- 4
资源评论
- vevid2018-10-16谢谢分享,不错!
- 知足者长乐2018-07-14谢谢分享,不错!
- 哈维利亚2019-02-19非常不错,准备在K7上进行移植
- gyj821172019-02-15很好的资源!
- ck24pdx2019-03-07谢谢分享,不错!
ingineer
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功