Commit Graph

2223 Commits (3db1050e91d664459610ac1f6f343ad9fe966ae4)

Author SHA1 Message Date
Istvan Csomortani a2c20551a2 axi_ad5766: Add Makefiles for the core 2017-04-27 11:22:31 +03:00
Istvan Csomortani f5fba79a08 ad5766_zed: Add an IOBUF to the reset line 2017-04-27 11:21:14 +03:00
Istvan Csomortani 9de0fe56d9 ad5766: Integrate the new axi_ad5766 into the project 2017-04-27 11:21:14 +03:00
Istvan Csomortani d177827224 ad5766_sdz : Fix SPI interface connection 2017-04-27 11:16:23 +03:00
Istvan Csomortani 225d133a68 ad5766_sdz: Initial commit 2017-04-27 11:12:45 +03:00
Rejeesh Kutty cfd4e006b3 hdlmake updates 2017-04-25 15:46:26 -04:00
Rejeesh Kutty 8fba8295f0 fmcadc5- hdl sync handling 2017-04-25 15:44:40 -04:00
Rejeesh Kutty 68bb7ffa40 adi_board- keep port delete simple 2017-04-25 15:44:03 -04:00
Istvan Csomortani 8eb65186e9 cn0363: Reorder the configuration settings of the fir filters
It seems that there are some dependencies between the fir compiler
cores parameters. With the old order of the parameter settings,
the tool throws the following warning:

CRITICAL WARNING: [BD 41-237] Bus Interface property TDATA_NUM_BYTES
does not match between /processing/sequencer/i_q_filtered(4)
and /processing/lpf/M_AXIS_DATA(5)
2017-04-25 17:40:09 +03:00
Adrian Costina a6457cb54f m2k:standalone, remove power optimizations as they are performed manually
- testing shows that the actual power consumtion is a bit less with them turned off
2017-04-25 10:09:55 +03:00
Istvan Csomortani b92703b59f daq2: Fix typo 2017-04-24 15:44:45 +03:00
Istvan Csomortani 0cfef974a6 cn0363: Fix typos and mistakes made in 0737183 2017-04-24 12:43:33 +03:00
Istvan Csomortani b9bc85dd1a daq2/zcu102: Update tcl command for IP configuration 2017-04-24 11:51:12 +03:00
Istvan Csomortani 871cfa7e5b daq2/kcu105: Update tcl command for IP configuration 2017-04-24 11:50:35 +03:00
Istvan Csomortani 49f096dc71 daq1: Fix typo 2017-04-24 11:49:08 +03:00
Istvan Csomortani 4e77acf282 adv7511/kcu105: Update tcl command for IP configuration 2017-04-24 11:48:33 +03:00
Lars-Peter Clausen 216826a9e5 adv7511: audio_clkgen: Disable clock source buffer insertion
Depending on the configuration of the clock source type of the input clock
the clocking wizard will instantiate all kinds of buffers on the input
clock signal.

For these particular projects there is no need to add any kind of buffer
since the source is already coming from a global clock buffer.  So set the
configuration accordingly.

Avoids the following warning:
	[Opt 31-32] Removing redundant IBUF since it is not being driven by a
	top-level port. i_system_wrapper/system_i/sys_audio_clkgen/inst/clkin1_ibufg
	Resolution: The tool has removed redundant IBUF. To resolve this
	warning, check for redundant IBUF in the input design.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-21 14:21:27 +02:00
Lars-Peter Clausen 4a582bf9ad adv7511: audio_clkgen: Disable phase alignment
There is no need for the audio clock to be phase aligned to its source
clock. When phase alignment is disabled the MMCM uses an internal feedback
path without requiring external resources, so disable it.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-21 14:21:27 +02:00
Lars-Peter Clausen 76e4105bfd adv7511: audio_clkgen: Infer input clock frequency
Instead of manually specifying the input clock frequency let the core infer
it automatically. This makes it more straight forward to change the clock
frequency.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-21 14:21:27 +02:00
Lars-Peter Clausen a12adf9f02 adv7511: audio_clkgen: Disable unused pins
Neither the reset nor the locked signal is used in this design, so disable them. Avoids warnings about unconnected pins.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-21 14:21:27 +02:00
Istvan Csomortani 74687eb88b fmcomms7: Update IP instantiations 2017-04-21 15:12:01 +03:00
Istvan Csomortani 5174bc1f67 fmcomms11: Update IP instantiations 2017-04-21 15:11:25 +03:00
Istvan Csomortani c9eaa43b1e fmcomms5: Update UP instantiations 2017-04-21 15:10:44 +03:00
Istvan Csomortani bb0cdf2f5e fmcomms2: Update IP instantiations 2017-04-21 15:09:37 +03:00
Istvan Csomortani 95249d2165 fmcjesdadc1: Update IP instantiations 2017-04-21 15:08:16 +03:00
Istvan Csomortani 4eaa43f8e1 daq3: Update IP instantiations 2017-04-21 15:07:41 +03:00
Istvan Csomortani 1ae357ce10 daq1: Update IP instantiations 2017-04-21 15:06:40 +03:00
Istvan Csomortani 073718315a cn0363: Update IP instantiations 2017-04-21 15:06:06 +03:00
Istvan Csomortani fa794520fd kc705_common/adv7511: Update IP instantiations 2017-04-21 15:03:31 +03:00
Lars-Peter Clausen 0e6cc95d0d pzsdr1/pzsdr2: audio_clkgen: Disable clock source buffer insertion
Depending on the configuration of the clock source type of the input clock
the clocking wizard will instantiate all kinds of buffers on the input
clock signal.

For these particular projects there is no need to add any kind of buffer
since the source is already coming from a global clock buffer.  So set the
configuration accordingly.

Avoids the following warning:
	[Opt 31-32] Removing redundant IBUF since it is not being driven by a
	top-level port. i_system_wrapper/system_i/sys_audio_clkgen/inst/clkin1_ibufg
	Resolution: The tool has removed redundant IBUF. To resolve this
	warning, check for redundant IBUF in the input design.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-21 13:22:33 +02:00
Lars-Peter Clausen 95a46bf1e1 pzsdr1/pzsdr2: audio_clkgen: Disable phase alignment
There is no need for the audio clock to be phase aligned to its source
clock. When phase alignment is disabled the MMCM uses an internal feedback
path without requiring external resources, so disable it.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-21 13:22:33 +02:00
Lars-Peter Clausen cfc51016ea pzsdr1/pzsdr2: audio_clkgen: Infer input clock frequency
Instead of manually specifying the input clock frequency let the core infer
it automatically. This makes it more straight forward to change the clock
frequency.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-21 13:22:19 +02:00
Istvan Csomortani 6ed721ee66 adrv9371/a10soc: Integrate the avl_dacfifo into project 2017-04-21 13:27:35 +03:00
Istvan Csomortani 2379514ae6 ac701_common/adv7511: Update IP instantiations
IPs are instantiated using the ad_ip_instance process, and configured
with the ad_ip_paramter process, to facilitate the tool upgrade.
2017-04-21 13:16:25 +03:00
Lars-Peter Clausen 6d72ce800c m2k: zed: Fix default HDMI clock frequency
The input clock frequency of the axi_clkgen was changed from 200 MHz to
100 Mhz. Update the divider settings accordingly to keep the standard
default output frequency of 148.5 MHz.

The incorrect divider settings did not affect operation of the design since
software reprograms them at startup anyway, but changing them avoids the
following warning:
	[DRC 23-20] Rule violation (AVAL-46) v7v8_mmcm_fvco_rule1 - The current computed target frequency, FVCO, is out of range for cell i_system_wrapper/system_i/axi_hdmi_clkgen/inst/i_mmcm_drp/i_mmcm. The computed FVCO is 445.455 MHz. The valid FVCO range for speed grade -1 is 600MHz to 1200MHz. The cell attribute values used to compute FVCO are CLKFBOUT_MULT_F = 49.000, CLKIN1_PERIOD = 10.00000, and DIVCLK_DIVIDE = 11 (FVCO = 1000 * CLKFBOUT_MULT_F/(CLKIN1_PERIOD * DIVCLK_DIVIDE)).
	This violation may be corrected by:
	  1. The timer uses timing constraints for clock period or clock frequency that affect CLKIN1 to set cell attribute CLKIN1_PERIOD, over-riding any previous value. This may already be in place and, if so this violation will be resolved once Timing is run.  Otherwise, consider modifying timing constraints to adjust the CLKIN1_PERIOD and bring FVCO into the allowed range.
	  2. In the absence of timing constraints that affect CLKIN1, consider modifying the cell CLKIN1_PERIOD to bring FVCO into the allowed range.
	  3. If CLKIN1_PERIOD is satisfactory, modify the CLKFBOUT_MULT_F or DIVCLK_DIVIDE cell attributes to bring FVCO into the allowed range.
	  4. The MMCM configuration may be dynamically modified by use of DRP which is recognized by an ACTIVE signal on DCLK pin.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-20 20:36:34 +02:00
Lars-Peter Clausen bb0021a926 common: zed/zc702/zc706/mitx045: audio_clkgen: Disable phase alignment
There is no need for the audio clock to be phase aligned to its source
clock. When phase alignment is disabled the MMCM uses an internal feedback
path without requiring external resources, so disable it.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-20 18:12:24 +02:00
Lars-Peter Clausen bfcc3696e4 common: zed/zc702/zc706/mitx045: Set audio clkgen clock source type
Depending on the configuration of the clock source type of the input clock
the clocking wizard will instantiate all kinds of buffers on the input
clock signal.

For these particular projects there is no need to add any kind of buffer
since the source is already coming from a global clock buffer.  So set the
configuration accordingly.

Avoids the following warning:
	[Opt 31-32] Removing redundant IBUF since it is not being driven by a
	top-level port. i_system_wrapper/system_i/sys_audio_clkgen/inst/clkin1_ibufg
	Resolution: The tool has removed redundant IBUF. To resolve this
	warning, check for redundant IBUF in the input design.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-20 18:12:24 +02:00
Lars-Peter Clausen 23ccc66f22 common: zc702/zc706/mitx045: audio_clkgen: Infer input clock frequency
Instead of manually specifying the input clock frequency let the core infer
it automatically. This makes it more straight forward to change the clock
frequency.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-20 18:12:24 +02:00
Istvan Csomortani 806947444f ad9434_fmc: Port redeclaration as a wire is not allowed 2017-04-20 14:33:47 +03:00
Lars-Peter Clausen 0ffbe50163 m2k: zed: Run video DMA at higher clock rate
For the M2K standalone version we run the interface clock at a lower rate
to reduce the power consumption. While this is not necessary on the ZED
board we also run the interface at a lower rate for consistency.

Currently the video DMA on the ZED board uses the interface clock for the
data path as well. This is now too slow to support 1080p@60Hz so move it
over to a faster clock.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-19 16:29:09 +02:00
Lars-Peter Clausen b213567305 common: zed: audio_clkgen: Infer input clock frequency
Instead of manually specifying the input clock frequency let the core infer
it automatically. This makes it more straight forward to change the clock
frequency.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-19 16:29:09 +02:00
Istvan Csomortani 1d4b92190a fmcomms2/zc702: Fix Warning[Synth 8-2611]
In Verilog-2001 standard, redeclaration of an output port as a wire
is not allowed.
2017-04-19 13:54:03 +03:00
Rejeesh Kutty 8e6dbe1917 fmcadc5/vc707, lpm mode 2017-04-18 12:41:53 -04:00
Rejeesh Kutty ddfbdfd2f7 pzsdr1/pzsdr2- ccbox added tws 2017-04-18 11:37:23 -04:00
Adrian Costina 5a7aa80145 m2k: zed, cleaned up some warnings 2017-04-18 17:17:11 +03:00
Adrian Costina 919010e85f m2k: ip automatic version update 2017-04-18 15:12:07 +03:00
Adrian Costina b05505a1c3 m2k: Move the BRAM generation outside of the variable fifo IP 2017-04-18 12:17:40 +02:00
Lars-Peter Clausen 5f83e20d33 m2k: standalone: Rework PS7 clocking
At the moment the PS7 is using three PLLs to generate its clocking tree.
One for the DDR, one for the ARM and one for the IO. This allows to run all
components at their respective maximum clock and extract maximum
performance from all components.

With some slight modifications it is possible to trade maximum performance
for a reduction in power consumption by using the same PLL for all three
sets of components and disabling the other two PLLs.

The CPU is now running at 500MHz rather than 666MHz and the DDR memory at
500MHz rather than 533MHz. This reduces power consumption by ~125mW.

This is OK since neither of them is a bottleneck for overall system
performance.

In addition software will downclock the CPU to 250MHz when full performance
is not required.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:40 +02:00
Lars-Peter Clausen 3b748d8252 m2k: standalone: Disable 200MHz clock
The 200 MHz clock was only used as the IODELAY controller clock. Since the
design does not use any IODELAYs anymore this clock can be removed.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:40 +02:00
Lars-Peter Clausen 63dfec25c1 m2k: standalone: Disable 2nd PS7 reset port
This reset is not used in the design, so remove it.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:40 +02:00
Adrian Costina 189e9194c8 m2k: Standalone, enabled power optimization 2017-04-18 12:17:40 +02:00
Adrian Costina 8b76c34dea scripts: Created ADI_POWER_OPTIMIZATION parameter for enabling power optimizations in the implementation stage 2017-04-18 12:17:40 +02:00
Adrian Costina 07e52b4566 m2k: Connect logic_analyzer path to clk_out instead of clk
- this allows for the clock switching to be done inside axi_logic_analyzer core
2017-04-18 12:17:39 +02:00
Lars-Peter Clausen 610cc3affa m2k: standalone: Disable DMA debug registers
The debug register logic for the DMA take up a fair amount of resources.
Disabling them frees up space in the FPGA and also helps a bit with power.
Since those registers are mainly useful in development and not so much in
production the change shouldn't have any visible external effects.

It is possible to re-enable the debug registers by setting DEBUG_BUILD=1.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:39 +02:00
Lars-Peter Clausen c9f863f189 m2k: standalone: Set static switching activity for the reset signals
The global reset signals are only asserted for a short moment during system
startup and deasserted during normal operation, which is the case we care
about for power analysis. Giving them a static switching probability
indicating that they are always de-asserted will yield better results for
power analysis.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:39 +02:00
Lars-Peter Clausen b206f8f37a m2k: Disable AD9963 core RX datapath again
The RX datapath has a lot of things (IQ correction, DC filter, ...) that
take up a lot of space which are all not really needed in this project. So
disable the RX datapath.

It was previously enabled because the ad9963 core did not perform
sign-extension on the ADC data signal when the datapath was disabled. But
this has now been addressed.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:39 +02:00
Lars-Peter Clausen c1ba57f808 m2k: Rework clocking domains
At the moment the register map fabric and DMA system memory side are
clocked by the 100MHz sys_cpu_clk. While this works fine that is a lot
faster than the clock has to run. There are only a few 100 register map
accesses per seconds at most and they are not on timing critical paths. The
penalty from clocking them at a lower rate is negligible for the overall
system performance.

The maximum clock rate for the DMAs is determined by the throughput
requirements. This is 200 Mbytes/s for the logic analyzer, pattern
generator and each of the DAC DMAs and 400 Mbytes/s for the ADC DMA.

The DMA datapath width is 64-bit so the required clock rates are 25MHz and
50MHz respectively. Some headroom is required to accommodate for occasional
bubble cycles on the data bus and the difference in reference clocks for
the converter and processing system.

The sys_cpu_clk is reduced to 27.8MHz which is fast enough for all but the
ADC DMA. For the ADC DMA a new clock domain running at 55.6 MHz is
introduced.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:39 +02:00
Lars-Peter Clausen 2eaf931e07 m2k: Replace logic analyzer MMCM
The MMCM generating the logic analyzer clock unfortunately consumes a
disproportionately large amount of power compared to the rest of the
design.

Replace it by sourcing the logic analyzer clock from one of the Zynq FCLKs.
The IO PLL is running anyway so the power requirement is much lower.

For the time being this means we loose the ability to source the clock from
an external pin. But that feature is not supported by software at the
moment anyway. We'll bring it eventually when required.

This changes reduces power consumption by roughly 100mW.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:39 +02:00
Lars-Peter Clausen e616c8da0b m2k: Remove channel pack core for now
We always have both ADC channels enabled and the cpack core takes up a fair
amount of space, so remove it for now. Might come back later when we really
need it.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:39 +02:00
Adrian Costina efa2d0c006 m2k: Connected adc/dac resets to decimation/interpolation cores 2017-04-18 12:17:39 +02:00
Adrian Costina 500112f79b m2k: Renamed l_clk to adc_clk and rst to adc_rst 2017-04-18 12:17:39 +02:00
Adrian Costina 6a49aefb6c m2k: Updated project to use new tx path with serdes 2017-04-18 12:17:39 +02:00
Lars-Peter Clausen b58a5c37eb m2k: Reduce AXI interconnect utilization
Use the new axi_rd_wr_combiner module to ... the read and write DMA
interfaces into a single interface. This allows the AXI interconnect
completely optimize itself away and reduce the overall resource utilization
of the project.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-04-18 12:17:39 +02:00
Adrian Costina 71394ee465 kcu105: ip automatic version update 2017-04-18 11:59:54 +03:00
Adrian Costina 942d69a30c Makefiles: Change MMU enabling parameter for altera designs from MMU to NIOS2_MMU 2017-04-18 10:57:16 +03:00
Adrian Costina 8e0c87e089 pluto: cleaned up some warnings 2017-04-18 10:34:13 +03:00
Adrian Costina f3c0be0868 motcon2_fmc: cleaned up some warnings 2017-04-18 10:33:13 +03:00
Adrian Costina 6e14cdb5f4 cftl_std: cleaned up some warnings 2017-04-18 10:32:28 +03:00
Adrian Costina d585d65692 cftl_cip: cleaned up some warnings 2017-04-18 10:29:20 +03:00
Adrian Costina 20672a3a8b mitx045: ip automatic version update 2017-04-14 17:46:25 +03:00
Adrian Costina 954037a716 microzed: ip automatic version update 2017-04-14 17:24:24 +03:00
Adrian Costina ebc04bcd9c usdrx1: ip automatic version update 2017-04-14 17:16:35 +03:00
Adrian Costina 24b797f1a6 motcon2: ip automatic version update 2017-04-14 17:11:08 +03:00
Adrian Costina 4981e6e525 usb_fx3: ip automatic version update 2017-04-14 16:55:30 +03:00
Adrian Costina c419b0042b pluto: ip automatic version update 2017-04-14 16:55:07 +03:00
Adrian Costina 79174422b6 imageon: ip automatic version update 2017-04-14 16:54:42 +03:00
Adrian Costina 4bda0c3a1a cftl_cip: ip automatic version update 2017-04-14 16:54:07 +03:00
Adrian Costina afe8b071a3 cftl_std: ip automatic version update 2017-04-14 16:53:10 +03:00
Istvan Csomortani 1c23cf4621 all: Update verilog files to verilog-2001 2017-04-13 11:59:55 +03:00
AndreiGrozav 04a4001dba Ip automatic version update: fmcadc2, fmcadc5 2017-04-12 19:03:16 +03:00
AndreiGrozav 627f78ec19 Ip automatic version update: common/board
- vc707
- zc702
- zed
2017-04-12 19:03:16 +03:00
Rejeesh Kutty 6d2b3bc1c7 adi_project- try something simple first 2017-04-11 14:27:35 -04:00
Rejeesh Kutty 1d9a8a24dc adi_board- create_bd_cell replacement 2017-04-11 14:26:02 -04:00
AndreiGrozav bc9483c5a2 Ip automatic version: Update ad*/common/ad*_bd.tcl
ad6676evb/common/ad6676evb_bd.tcl
ad7616_sdz/common/ad7616_bd.tcl
ad7768evb/common/ad7768evb_bd.tcl
ad9265_fmc/common/ad9265_bd.tcl
ad9434_fmc/common/ad9434_bd.tcl
ad9467_fmc/common/ad9467_bd.tcl
ad9739a_fmc/common/ad9739a_fmc_bd.tcl
adrv9371x/common/adrv9371x_bd.tcl
adv7511/common/adv7511_bd.tcl
fmcadc4/common/fmcadc4_bd.tcl
2017-04-10 18:52:37 +03:00
Rejeesh Kutty 454e6c0382 daq2- ad-ip-instance & ad-ip-parameter 2017-04-06 13:04:53 -04:00
Rejeesh Kutty 2535165461 xilinx- ad-ip-instance & ad-ip-parameter 2017-04-06 13:04:19 -04:00
Rejeesh Kutty 80f93e6a31 zc706- ad-ip-instance & ad-ip-parameter 2017-04-06 13:03:22 -04:00
Rejeesh Kutty 820874ef93 adi_board- add auto ip version handling 2017-04-06 13:02:17 -04:00
Lars-Peter Clausen e04793b6eb m2k: standalone: Assign 0 to unused GPIO inputs
To avoid warnings from the tools assign 0 to the unused GPIO inputs.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-03-30 11:16:25 +02:00
Rejeesh Kutty 8eb1dd0a8b adrv9371x/altera- xilinx/chip-select consistency 2017-03-29 12:59:09 -04:00
Lars-Peter Clausen 24a7d8ea9d m2k: Remove redundant s_axi_{aclk,aresetn} assignment
ad_cpu_interconnect will make sure to connect the clock and the reset of
the AXI interface. Remove the redundant manual assignments.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-03-28 11:14:48 +02:00
Rejeesh Kutty deb8635854 adrv9371x/altera- gpio equivalency fix 2017-03-27 16:37:55 -04:00
Rejeesh Kutty 8f1564a9c4 adrv9371x/a10gx- gpio matching 2017-03-27 13:51:45 -04:00
Rejeesh Kutty ae0f4672b2 daq1/a10gx- fix project to compile 2017-03-23 09:46:40 -04:00
Rejeesh Kutty cc6bf53d98 adrv9371x/a10soc- altera reset synchronizer false path? 2017-03-23 09:46:40 -04:00
Adrian Costina 968d94603e fmcjesdadc1: Update xcvr configuration to the default one used for this board 2017-03-23 11:31:00 +02:00
Rejeesh Kutty 4a275302a0 a5soc- add ddr3 location assignments 2017-03-22 10:12:34 -04:00
Rejeesh Kutty 7e87ecae22 altera/a10gx- daq1/fmcomms2 fix typos 2017-03-22 09:48:02 -04:00
Rejeesh Kutty b3f06af77a altera srf files do not work 2017-03-22 09:25:50 -04:00
Rejeesh Kutty 66a5d44a18 a5gte- add constraints for tq 2017-03-21 10:53:31 -04:00