Releases: slaclab/surf
Minor Release v2.51.0
Pull Requests Since v2.50.0
Unlabeled
- #1195 - adding Pgp4RxLiteLowSpeed.vhd
- #1204 - introduce rst_polarity feature to all pgp4txlite/pgp4rx modules to prepare for asic deployment
- #1194 - adding userCLk to SelectioDeserUltraScale.vhd
- #1203 - _Qsfp.py Update
- #1199 - Updates to AxiLiteSaciMaster.vhd & SaciMaster2.vhd
- #1197 - Increased range of SACI_NUM_CHIPS_G to support more than 4 chips
- #1200 - Pgp4RxLiteLowSpeedLane.vhd Update
- #1198 - Update RstSync.vhd
Pull Request Details
adding userCLk to SelectioDeserUltraScale.vhd
Author: | Larry Ruckman [email protected] |
Date: | Mon Sep 23 10:27:09 2024 -0700 |
Pull: | #1194 (27 additions, 8 deletions, 1 files changed) |
Branch: | slaclab/ruckman/SelectioDeserUltraScale |
Notes:
Description
- mapping
CLKOUT1
touserClk
, which is a useful optional clock reference
adding Pgp4RxLiteLowSpeed.vhd
Author: | Larry Ruckman [email protected] |
Date: | Thu Sep 26 09:52:31 2024 -0700 |
Pull: | #1195 (803 additions, 0 deletions, 5 files changed) |
Branch: | slaclab/Pgp4RxLiteLowSpeed |
Notes:
Description
- Designed for receiving unidirectional PGP4-lite from ASIC using the FPGA's SelectIO (LVDS I/O)
Increased range of SACI_NUM_CHIPS_G to support more than 4 chips
Author: | Larry Ruckman [email protected] |
Date: | Tue Oct 1 08:05:37 2024 -0700 |
Pull: | #1197 (7 additions, 7 deletions, 1 files changed) |
Branch: | slaclab/saci_6_chip |
Notes:
Description
The
AxiLiteSaciMaster
currently has a fixed limit of four ASICs ("chips"). This has been increased to six to work with a new readout system with that many ASICs.Details
The new 3x2 Readout (https://confluence.slac.stanford.edu/x/eKRxG) seems to be first system to use more than four ASICs with a common SACI interfaces. There is no mention why only four chips were allowed previously. The hardware will arrive in a couple of weeks with which we can test running SACI with six chips, but from the code alone I don't see any reason why more than four would not work.
Update RstSync.vhd
Author: | Larry Ruckman [email protected] |
Date: | Wed Sep 25 09:59:04 2024 -0700 |
Pull: | #1198 (5 additions, 2 deletions, 1 files changed) |
Branch: | slaclab/RstSync-std_logic |
Notes:
Description
- Using "std_logic" instead of "sl" for generics due to issues with SystemVerilog handling VHDL subtype on generics properly
Updates to AxiLiteSaciMaster.vhd & SaciMaster2.vhd
Author: | Larry Ruckman [email protected] |
Date: | Fri Sep 27 12:31:21 2024 -0700 |
Pull: | #1199 (22 additions, 8 deletions, 2 files changed) |
Branch: | slaclab/AxiLiteSaciMaster-asicRstL-aware |
Notes:
Description
Pgp4RxLiteLowSpeedLane.vhd Update
Author: | Larry Ruckman [email protected] |
Date: | Mon Sep 30 09:13:03 2024 -0700 |
Pull: | #1200 (7 additions, 2 deletions, 1 files changed) |
Branch: | slaclab/Pgp4RxLiteLowSpeedLane |
Notes:
Description
- Mask off the Valid to the RX protocol until the gearbox is locked
_Qsfp.py Update
Author: | Larry Ruckman [email protected] |
Date: | Wed Oct 2 11:03:34 2024 -0700 |
Pull: | #1203 (31 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/Qsfp-TxDisable |
Notes:
Description
introduce rst_polarity feature to all pgp4txlite/pgp4rx modules to prepare for asic deployment
Author: | Larry Ruckman [email protected] |
Date: | Tue Oct 1 19:27:41 2024 -0700 |
Pull: | #1204 (164 additions, 121 deletions, 15 files changed) |
Branch: | slaclab/pgp4lite-rstPolarity |
Notes:
introduce rst_polarity feature to all pgp4txlite/pgp4rx modules to prepare for asic deployment
(ASIC designs usually employ an active-LOW reset/i.e. a rstN/enable signal)
add RST_POLARITY_G to all modules.
note that I also added RST_POLARITY_G to RX-related modules because I use them in my local behavioral simulation (no receiver in ASICs are foreseen). Since the RST_POLARITY_G generic default values are consistent, the changes in the TX/RX modules hopefully should not have impact on existing designs.
Patch Release v2.43.1 for SMURF
Description
Full Changelog: v2.43.0...v2.43.1
Patch Release v2.11.3 for SMURF
Description
- upgrading to [email protected] for AxiStreamFifoV2 bug fixes
Full Changelog: v2.11.2...v2.11.3
Minor Release v2.50.0
Pull Requests Since v2.49.0
Unlabeled
- #1176 - Clean up of ethernet before adding RoCEv2 support
- #1163 - Create SaciAxiLiteMaster module
- #1184 - Adding AxiStreamCompact.vhd
- #1187 - Adding AxiStreamTrailerRemove
- #1185 - Adding AxiStreamTrailerAppend
- #1190 - AxiStreamCompact Patch
- #1183 - bug fix for locked IPs in MicroblazeBasicCore.bd for v2022.2 (or later)
- #1188 - UdpEngineRx.vhd Update for RoCEv2 support
- #1181 - pgp2fc/gtyUltraScale+/ruckus.tcl: bug fix for Vivado version checking
- #1186 - Add some AxiVersion Rogue Device Variables to NoConfig group
Pull Request Details
Create SaciAxiLiteMaster module
Author: | Larry Ruckman [email protected] |
Date: | Fri Sep 6 07:31:54 2024 -0700 |
Pull: | #1163 (650 additions, 0 deletions, 5 files changed) |
Branch: | slaclab/SaciAxiLiteMaster |
Notes:
Description
Add a new
SaciAxiLiteMaster
module. This module is intended to be paired withAxiLiteSaciMaster
. Together they create a an AXI-Lite bridge between two chips carried over the SACI bus.Details
Only 20 bits of AXI-Lite address space are available, due to the limited address bits on the SACI bus protocol.
Also added a cocotb testbench for the new module.
Clean up of ethernet before adding RoCEv2 support
Author: | Larry Ruckman [email protected] |
Date: | Mon Aug 12 08:43:30 2024 -0700 |
Pull: | #1176 (545 additions, 1440 deletions, 19 files changed) |
Branch: | slaclab/eth-vlan-removal |
Notes:
Description
pgp2fc/gtyUltraScale+/ruckus.tcl: bug fix for Vivado version checking
Author: | Larry Ruckman [email protected] |
Date: | Wed Jul 24 09:49:05 2024 -0700 |
Pull: | #1181 (2 additions, 2 deletions, 1 files changed) |
Branch: | slaclab/pgp2fc-version-check |
Notes:
Description
- Pgp2fcGtyCore was build with 2023.1 (not 2020.1)
bug fix for locked IPs in MicroblazeBasicCore.bd for v2022.2 (or later)
Author: | Larry Ruckman [email protected] |
Date: | Thu Aug 15 11:07:44 2024 -0700 |
Pull: | #1183 (8 additions, 6 deletions, 1 files changed) |
Branch: | slaclab/microblaze-dev |
Notes:
Description
- This is mostly a bug in the Vivado IP integrator when the .bd is generated from a different FPGA fabric/target
- This "upgrade" is not changing the IP's revision number but updating that metadata of the FPGA fabric from the .bd file
Adding AxiStreamCompact.vhd
Author: | Larry Ruckman [email protected] |
Date: | Fri Sep 6 07:26:47 2024 -0700 |
Pull: | #1184 (265 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/AxiStreamCompact |
Notes:
Description
- Copied src from FilMarini:surf:roce fork (Credit to @FilMarini)
- Required for future RoCEv2 support
- emacs VHDL beautify
- removing isRoCE port (application specific) and switch to standard reset convention
Adding AxiStreamTrailerAppend
Author: | Larry Ruckman [email protected] |
Date: | Fri Sep 6 07:26:26 2024 -0700 |
Pull: | #1185 (159 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/AxiStreamTrailerAppend |
Notes:
Description
- Copied src from FilMarini:surf:roce fork (Credit to @FilMarini)
- Required for future RoCEv2 support
- emacs VHDL beautify
- removing isRoCE port (application specific) and switch to standard reset convention
Add some AxiVersion Rogue Device Variables to NoConfig group
Author: | Larry Ruckman [email protected] |
Date: | Fri Sep 6 07:34:45 2024 -0700 |
Pull: | #1186 (2 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/axi-version-noconfig |
Notes:
Description
FpgaReloatHalt
andUserReset
have been added to the "NoConfig" group. There is no reason these should be in a configuration YAML file.
Adding AxiStreamTrailerRemove
Author: | Larry Ruckman [email protected] |
Date: | Mon Sep 9 08:16:46 2024 -0700 |
Pull: | #1187 (177 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/AxiStreamTrailerRemove |
Notes:
Description
UdpEngineRx.vhd Update for RoCEv2 support
Author: | Larry Ruckman [email protected] |
Date: | Fri Sep 6 15:57:35 2024 -0700 |
Pull: | #1188 (4 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/UdpEngineRx-RoCEv2 |
Notes:
Description
- Remove 4 bytes (iCRC) from byteCnt if RoCEv2 detected
AxiStreamCompact Patch
Author: | Larry Ruckman [email protected] |
Date: | Mon Sep 9 08:17:55 2024 -0700 |
Pull: | #1190 (31 additions, 30 deletions, 1 files changed) |
Branch: | FilMarini/pre-release |
Notes:
Applied patch to AxiStreamCompact module + SLAC emacs beautify
Minor Release v2.49.0
Pull Requests Since v2.48.1
Unlabeled
- #1174 - General C/C++ Updates
- #1170 - Adding rssi_network_analyzer.py
- #1172 - Create AD5541 DAC
- #1177 - Update DmaXvcWrapper.vhd
- #1179 - _LeapXcvrUpperPages.py bug fix
- #1173 - bug fix for SsiPrbsRx.WordRate
- #1178 - Update PgpXvcWrapper.vhd
Pull Request Details
Adding rssi_network_analyzer.py
Author: | Larry Ruckman [email protected] |
Date: | Mon Jun 24 16:34:48 2024 -0700 |
Pull: | #1170 (286 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/rssi_crash |
Notes:
Description
- script used for debugging RSSI network traffic
Create AD5541 DAC
Author: | Larry Ruckman [email protected] |
Date: | Fri Jul 5 15:33:18 2024 -0700 |
Pull: | #1172 (91 additions, 116 deletions, 4 files changed) |
Branch: | slaclab/ad5541-dac |
Notes:
Description
Created AD5541 DAC VHDL module and updated Python class to match.
Details
Created a new
AxiAd5541Core
VHDL module that is mostly a wrapper around aAxiSpiMaster
with some generics set correctly to work with this device.There is already a
Ad5541
Python class defined in surf, which was created in 2019, but the corresponding VHLD module seems to have been forgotten. This existing Python class has differentRemoteVariable
related to various debug features and I/O control of the missing HDL module. Since this module already exists in surf there might be some conflict in replacing it with this new simplified version. Would it be better to try and find the missing HDL module?JIRA
Related
bug fix for SsiPrbsRx.WordRate
Author: | Larry Ruckman [email protected] |
Date: | Wed Jul 10 09:05:41 2024 -0700 |
Pull: | #1173 (1 additions, 1 deletions, 1 files changed) |
Branch: | slaclab/SsiPrbsRx-patch |
Notes:
Description
- LinkVariable function to be called should be
get()
[notread()
]
General C/C++ Updates
Author: | Larry Ruckman [email protected] |
Date: | Wed Jul 10 09:15:37 2024 -0700 |
Pull: | #1174 (1463 additions, 120081 deletions, 36 files changed) |
Branch: | slaclab/cpplinter |
Notes:
Description
- Improves the code quality by running the linter automatically for every commit via Github action
- removing xvcSrv (depreciated)
- Users should use
rogue.protocols.xilinx.Xvc
instead at this point- removing
base/general/simlink's VhpiGeneric.c/.h
because redundant and obsolete with respect toaxi/simlink/src/VhpiGeneric.c/.h
- adding *.so to .gitignore
Update DmaXvcWrapper.vhd
Author: | Larry Ruckman [email protected] |
Date: | Thu Jul 11 13:55:40 2024 -0700 |
Pull: | #1177 (60 additions, 72 deletions, 2 files changed) |
Branch: | slaclab/ruck314-patch-1 |
Notes:
Description
- AXIS_CLK_FREQ_G is misleading name because generic is associated with the xvcClk (not axisClk) at surf.UdpDebugBridgeWrapper
- Renaming this generic to XVC_CLK_FREQ_G
VALID_THOLD_G => 0, -- 0 = only when frame ready
is required to fix the issue when there are tValid gaps in the transfer
Update PgpXvcWrapper.vhd
Author: | Larry Ruckman [email protected] |
Date: | Thu Jul 11 14:08:22 2024 -0700 |
Pull: | #1178 (1 additions, 0 deletions, 1 files changed) |
Branch: | slaclab/PgpXvcWrapper-patch |
Notes:
Description
- corner case bug fix to prevent a tValid gap for frames inbound to XVC
_LeapXcvrUpperPages.py bug fix
Author: | Larry Ruckman [email protected] |
Date: | Tue Jul 23 09:49:07 2024 -0700 |
Pull: | #1179 (1 additions, 1 deletions, 1 files changed) |
Branch: | slaclab/LeapXcvr-bug-fixes |
Notes:
Description
- it should be
(read=read)
not(read=read)()
v2.4.1 - SMURF Production Release
Description
- Tagging this branch since stable for smurf production
- Based on the
512fft-tkid
development branch
What's Changed
- SrpV3AxiTb.vhd + bug fix to SrpV3Core.vhd by @ruck314 in #661
- Add register verify for the read/write registers by @ruck314 in #664
- Adding AxiStreamResizeTb.vhd by @ruck314 in #665
- Adding pipeline registers to help with timing for dsp/fixed/BoxcarIntegrator.vhd by @leosap in #662
- Resolving double YAML load issue by @ruck314 in #666
- Update _Lmk04828.py by @ruck314 in #667
Full Changelog: v2.4.0...v2.4.1
v0.0.0 - SVN state
Description
- From 7 years ago, this was the "state" of the SVN before migrating to GIT
Patch Release v2.48.1
Pull Requests Since v2.48.0
Bug
- #1169 - SugoiSubordinateFsm.vhd Updates
Unlabeled
- #1161 - Fix linkedGet and linkedSet calls in Rogue Devices
Pull Request Details
Fix linkedGet and linkedSet calls in Rogue Devices
Author: | Larry Ruckman [email protected] |
Date: | Wed Jun 19 09:39:50 2024 -0700 |
Pull: | #1161 (299 additions, 247 deletions, 29 files changed) |
Branch: | slaclab/rogue-linkedGet |
Notes:
Description
Update Rogue code to reflect best practices for LinkedVariables.
Details
SugoiSubordinateFsm.vhd Updates
Author: | Larry Ruckman [email protected] |
Date: | Wed Jun 19 15:14:45 2024 -0700 |
Pull: | #1169 (5 additions, 2 deletions, 2 files changed) |
Branch: | slaclab/SugoiSubordinateFsm-update |
Labels: | bug |
Notes:
Description
- For ASIC designs it is best to declare a 'Default' state which returns to INIT_S state
- force INIT_S state if 4-bit r.state is not enum define state
- removing 'default' on pwrOnRst because it should always be connected on ASIC
Minor Release v2.48.0
Pull Requests Since v2.47.3
Bug
- #1162 - AxiStreamRingBuffer.vhd: bug fix and enchancements
- #1165 - Bug fix to _Ina237.py when RST execute and shadow variables out of sync to remote
Enhancement
- #1162 - AxiStreamRingBuffer.vhd: bug fix and enchancements
- #1164 - Update to minimize information saved in YAML dumps
Unlabeled
- #1158 - Adding software support for TI INA237 & Linear LTC3815 and update to _Sa56004x.py
- #1159 - PgpXvcWrapper.vhd is a xilinx dependent src code
Pull Request Details
Adding software support for TI INA237 & Linear LTC3815 and update to _Sa56004x.py
Author: | Larry Ruckman [email protected] |
Date: | Fri May 10 02:24:49 2024 +0700 |
Pull: | #1158 (366 additions, 8 deletions, 7 files changed) |
Branch: | slaclab/TI-INA237 |
Notes:
Description
PgpXvcWrapper.vhd is a xilinx dependent src code
Author: | Larry Ruckman [email protected] |
Date: | Fri May 10 02:25:00 2024 +0700 |
Pull: | #1159 (1 additions, 0 deletions, 2 files changed) |
Branch: | slaclab/cadance-genus-update |
Notes:
Description
- Moved PgpXvcWrapper.vhd into a new xilinx directory and updated the ruckus.tcl accordingly
- Required for compiling digital ASICs
AxiStreamRingBuffer.vhd: bug fix and enchancements
Author: | Larry Ruckman [email protected] |
Date: | Wed Jun 12 08:19:55 2024 +0900 |
Pull: | #1162 (60 additions, 21 deletions, 1 files changed) |
Branch: | slaclab/AxiStreamRingBuffer-path |
Labels: | bug, enhancement |
Notes:
Description
- Synchronizing the data and AXIL resets to their counterpart FSMs
- Removing
rstb
from the local RAM to improve performance (help with making timing closure)
Update to minimize information saved in YAML dumps
Author: | Larry Ruckman [email protected] |
Date: | Wed Jun 12 12:52:55 2024 -0700 |
Pull: | #1164 (9 additions, 0 deletions, 9 files changed) |
Branch: | slaclab/groups-no-yaml |
Labels: | enhancement |
Notes:
Description
- including NoState/NoConfig to RemoteVariables that we don't want to save values to YAML file
Bug fix to _Ina237.py when RST execute and shadow variables out of sync to remote
Author: | Larry Ruckman [email protected] |
Date: | Wed Jun 12 12:53:20 2024 -0700 |
Pull: | #1165 (16 additions, 15 deletions, 1 files changed) |
Branch: | slaclab/ESROGUE-672 |
Jira: | https://jira.slac.stanford.edu/issues/ESROGUE-672 |
Labels: | bug |
Notes:
Description
Patch Release v2.47.3
Pull Requests Since v2.47.2
Unlabeled
- #1155 - adding frameCnt register to SsiPrbsRx & SsiPrbsTx
- #1152 - Switch to common YAML workflow scripts in ruckus
- #1156 - AxiStreamRingBuffer.vhd: Bug Fix for SoftTrig
- #1151 - Update README.md
- #1153 - Dac38J84 yaml changes
- #1157 - SyncTrigPeriod.vhd: bug fix for wrong period measurement for first trigger
Pull Request Details
Update README.md
Author: | Larry Ruckman [email protected] |
Date: | Mon Apr 29 23:44:26 2024 +0700 |
Pull: | #1151 (9 additions, 1 deletions, 1 files changed) |
Branch: | slaclab/ruck314-patch-1 |
Notes:
Description
- Adding a link to the surf-tutorial repo
- Adding a link to the IEEE RT workshop presentation
Switch to common YAML workflow scripts in ruckus
Author: | Larry Ruckman [email protected] |
Date: | Mon Apr 29 23:44:51 2024 +0700 |
Pull: | #1152 (11 additions, 82 deletions, 1 files changed) |
Branch: | slaclab/ESROGUE-645 |
Jira: | https://jira.slac.stanford.edu/issues/ESROGUE-645 |
Notes:
Description
https://docs.github.com/en/actions/using-workflows/reusing-workflows
JIRA
Dac38J84 yaml changes
Author: | Larry Ruckman [email protected] |
Date: | Thu Apr 25 08:34:05 2024 +0700 |
Pull: | #1153 (9 additions, 1 deletions, 1 files changed) |
Branch: | slaclab/Jira-AAASPGR-1 |
Notes:
Modifications to Dac38J84 yaml
- Changed lane number to 8 (DAC has upto 8). A value of 2 or below does not allow access to 3 to 8.
- Added laneEnable register RO
JIRA
adding frameCnt register to SsiPrbsRx & SsiPrbsTx
Author: | Larry Ruckman [email protected] |
Date: | Fri Apr 26 10:53:07 2024 +0700 |
Pull: | #1155 (81 additions, 29 deletions, 5 files changed) |
Branch: | slaclab/prbs-frameCnt |
Notes:
Description
AxiStreamRingBuffer.vhd: Bug Fix for SoftTrig
Author: | Larry Ruckman [email protected] |
Date: | Tue May 7 03:38:17 2024 +0700 |
Pull: | #1156 (9 additions, 7 deletions, 1 files changed) |
Branch: | slaclab/AxiStreamRingBuffer-patch |
Notes:
Description
- Bug was introduced during the ExtTrig overhaul from 6dbf057
SyncTrigPeriod.vhd: bug fix for wrong period measurement for first trigger
Author: | Larry Ruckman [email protected] |
Date: | Tue May 7 02:55:45 2024 +0700 |
Pull: | #1157 (3 additions, 3 deletions, 1 files changed) |
Branch: | slaclab/ESSURF-25 |
Jira: | https://jira.slac.stanford.edu/issues/ESSURF-25 |
Notes:
Description
v.cnt
needs to be reset to zero after any trigger (not only the armed state)