From 7015f5ed2d495f3908773b7c7d74864d0cc3871a Mon Sep 17 00:00:00 2001 From: Max Köhler Date: Fri, 5 Feb 2021 13:14:41 -0600 Subject: fpga: x400: cpld: Add support for X410 motherboard CPLD Co-authored-by: Humberto Jimenez Co-authored-by: Javier Valenzuela --- .../usrp3/top/x400/cpld/scripts/ps_cs_analysis.tcl | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 fpga/usrp3/top/x400/cpld/scripts/ps_cs_analysis.tcl (limited to 'fpga/usrp3/top/x400/cpld/scripts') diff --git a/fpga/usrp3/top/x400/cpld/scripts/ps_cs_analysis.tcl b/fpga/usrp3/top/x400/cpld/scripts/ps_cs_analysis.tcl new file mode 100644 index 000000000..03ff77d2c --- /dev/null +++ b/fpga/usrp3/top/x400/cpld/scripts/ps_cs_analysis.tcl @@ -0,0 +1,32 @@ +# +# Copyright 2021 Ettus Research, a National Instruments Brand +# +# SPDX-License-Identifier: LGPL-3.0-or-later +# +# Module: ps_cs_analysis +# +# Description: +# +# Analyze false path in PS SPI logic to ensure an upper delay boundary. +# + +# get project to a working state +project_open -force "mb_cpld.qpf" +create_timing_netlist +update_timing_netlist + +# Determine data path delay from MB CPLD chip select signal to MB CPLD internal +# SPI slave +set paths [report_path -from [get_registers {ps_spi_cs_n_decoded[0]}] -multi_corner] +set spiSlaveCsPathDelay [lindex $paths 1] + +# clock period at 250 MHz (clock driving the decoding registers) +set maxDelay 4 + +# compare path from above with maximum delay +if ([expr {$maxDelay < $spiSlaveCsPathDelay}]) { + puts "MB CPLD SPI CS line longer than expected." + exit 1 +} + +exit 0 -- cgit v1.2.3