Commit Graph

6137 Commits (de70157e3a50dae3013609cdcbedf30768d103c2)

Author SHA1 Message Date
Lars-Peter Clausen 0f553a08e8 ad6676evb: Drop explicit axi_dmac clock synchronicity configuration
The axi_dmac core is now capable of detecting whether its different parts
run in different clock domains or not. No need to configure it manually any
more.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:21 +02:00
Lars-Peter Clausen 4c51224696 axi_dmac: Configure AXI master bus properties according to core configuration
Configure the maximum burst size as well as the maximum number of active
requests on the AXI master interfaces according to the core configuration.
This allows connected slaves to know what kind of requests to expect and
allows them to configure themselves accordingly.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:19 +02:00
Lars-Peter Clausen 12fc6d1672 axi_dmac: Indicate that the core does not issue narrow AXI bursts
The axi_dmac core does not issue narrow AXI bursts. Indicate this by
setting the SUPPORTS_NARROW_BURST property to 0 on both AXI master
interfaces.

This allows connected slaves to know that they will not receive narrow
bursts, which allows them to disable support for it.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:18 +02:00
Lars-Peter Clausen 5f307f862f axi_dmac: Use sane defaults for the AXI protocol type
The axi_dmac core generates requests which are both AXI3 and AXI4
compliant. This means it is possible to connect it to both a AXI3 or AXI4
slave port without needing a AXI protocol converter.  Unfortunately it is
not possible to declare a port as both AXI3 and AXI4 compliant, so the core
has the C_DMA_AXI_PROTCOL_SRC and C_DMA_AXI_PROTOCOL_DEST parameters, which
allow to configure the protocol type of the corresponding AXI master
interface. Currently the default is always AXI4.

But when being used on ZYNQ it is most likely that the AXI master interface
of the DMAC core ends up being connected to the AXI3, so change the default
to AXI3 if the core is instantiated in a ZYNQ design.

The default can still be overwritten by explicitly setting the
configuration property.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:17 +02:00
Lars-Peter Clausen f079b2193a axi_dmac: Add support for auto-detecting asynchronous clock configuration
Add support for querying the clock domains of the clock pins for the
axi_dmac controller. This allows the core to automatically figure out
whether its different parts run in different clock domains or not and setup
the configuration parameters accordingly.

Being able to auto-detect those configuration parameters makes the core
easier to use and also avoids accidental misconfiguration.

It is still possible to automatically overwrite the configuration
parameters by hand if necessary.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:15 +02:00
Lars-Peter Clausen 19f7d8500c adi_ip.tcl: Add support for adding bd files to a core
bd files can be used to automate certain tasks in IP integrator when the
core is instantiated. Add a helper command for adding such files to a core.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:14 +02:00
Lars-Peter Clausen 39320ef48b axi_dmac: Fix source pause signal
For the source controller use the pause signal that has been properly
transferred to the source clock domain rather than the pause signal from
the request clock domain.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:13 +02:00
Lars-Peter Clausen 91bb54467b axi_dmac: Generate per core instance constraint file
When having multiple DMA cores sharing the same constraint file Vivado
seems to apply the constraints from the first core to all the other cores
when re-running synthesis and implementation from within the Vivado GUI.

This causes wrong timing constraints if the DMA cores have different
configurations. To avoid this issue use a TTCL template that generates a
custom constraint file for each DMA core instance.

This also allows us to drop the asynchronous clock detection hack from the
constraint file and move it to the template and only generate the CDC
constraints if the clock domains are asynchronous.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:12 +02:00
Lars-Peter Clausen 0f5f21eec2 adi_ip.tcl: Add helper function to add TTCL files to a core
Add a helper function which allows to add TTCL templates files to a core.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-18 15:27:10 +02:00
Adrian Costina 0021c7869d kc705: Deactivated narrow burst support, as it's not needed 2015-09-16 19:02:17 +03:00
Adrian Costina 46808c4c41 util_wfifo: Changed some reset for several registers from asynchronous to synchronous for better integration with the FIFO 2015-09-16 18:55:47 +03:00
Adrian Costina 70cea5b14e fmcomms1: Removed ILA 2015-09-16 18:51:40 +03:00
Adrian Costina 6804f3377a axi_ad9643: Updated core with latest constraints 2015-09-16 15:49:13 +03:00
Adrian Costina 5347c058df axi_ad9122: Updated core with latest constraints 2015-09-16 15:48:33 +03:00
Adrian Costina 884f45c81d common library: Registered dc_filter and iq_correction coefficients 2015-09-16 14:24:18 +03:00
Lars-Peter Clausen 052860cbc3 axi_dmac: Fix source pause signal
For the source controller use the pause signal that has been properly
transferred to the source clock domain rather than the pause signal from
the request clock domain.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-16 11:02:08 +02:00
Lars-Peter Clausen 5af371db6b axi_dmac: Generate per core instance constraint file
When having multiple DMA cores sharing the same constraint file Vivado
seems to apply the constraints from the first core to all the other cores
when re-running synthesis and implementation from within the Vivado GUI.

This causes wrong timing constraints if the DMA cores have different
configurations. To avoid this issue use a TTCL template that generates a
custom constraint file for each DMA core instance.

This also allows us to drop the asynchronous clock detection hack from the
constraint file and move it to the template and only generate the CDC
constraints if the clock domains are asynchronous.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-15 19:54:33 +02:00
Lars-Peter Clausen 522f30ce21 adi_ip.tcl: Add helper function to add TTCL files to a core
Add a helper function which allows to add TTCL templates files to a core.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-15 19:00:56 +02:00
Adrian Costina 7c896ba5f8 axi_ad9361: Fixed constraints definition 2015-09-14 18:20:30 +03:00
Adrian Costina 67ffeb18e8 axi_ad9739a: Updated core with latest constraints 2015-09-11 14:04:33 +03:00
Adrian Costina 63aaa58861 ad9265_fmc: Updated project, removed ILA related clocks 2015-09-11 11:27:58 +03:00
Adrian Costina e33403816c axi_ad9265: Updated core with latest constraints 2015-09-11 11:26:28 +03:00
Istvan Csomortani 5bc16159fa ad_tdd_sync: The resync will reset all the control lines 2015-09-10 11:28:36 +03:00
Istvan Csomortani a679251d7d Makefiles: Update Make 2015-09-09 17:13:19 +03:00
Istvan Csomortani f3eca48533 pzsdr_rfsom: Update project with the new TDD sync interface 2015-09-09 12:37:52 +03:00
Istvan Csomortani 510f1cfdd9 fmcomms2_zc706: Update project with the new TDD sync interface 2015-09-09 12:35:22 +03:00
Istvan Csomortani 85ffc25ec5 ad_tdd_sync: Update the synchronization logic
The synchronization interface is a single bidirectional line. Output for Master, input for Slave.
The sync_period value is relative to frame length and the digital interface clock. The actual synchronization
period will be: sync_period * frame_length * fb_clock_cycle
2015-09-09 12:31:58 +03:00
Istvan Csomortani 5a566b9e5d ad_tdd_control: Add delay compensation for the control lines 2015-09-09 12:24:26 +03:00
Istvan Csomortani 6acb350ee5 axi_dmac: Update for axi_dmac_constr.xdc
Parameter called 'processing_order' default value is 'late'. No need to specify it at process call.
2015-09-09 12:08:35 +03:00
Rejeesh Kutty 381ffd43c1 gtlb- remove pn test-reset 2015-09-08 13:52:33 -04:00
Adrian Costina f428d8bde9 adv7511: KC705, updated design so that the axi_hdmi_dma core has memory connection datawidth of 512 2015-09-08 16:43:40 +03:00
Adrian Costina d81d8238a9 kc705: Updated mig project file 2015-09-08 16:42:23 +03:00
Adrian Costina 2757cd8baf adv7511: AC701 fixed system top 2015-09-07 16:48:10 +03:00
Rejeesh Kutty 214f5b18c1 no-trace option 2015-09-03 16:16:31 -04:00
Rejeesh Kutty 00a55ded00 ibert to jesd-gt change 2015-09-03 16:16:30 -04:00
Rejeesh Kutty 77ee3c4cbc ibert to jesd-gt change 2015-09-03 16:16:28 -04:00
Rejeesh Kutty dbf7c154b2 no-trace option 2015-09-03 16:16:27 -04:00
Rejeesh Kutty e2aca435e5 ibert-to-jesd-gt change 2015-09-03 16:16:25 -04:00
Rejeesh Kutty 9bef9742b7 jesd_gt- cosmetic changes 2015-09-03 16:16:24 -04:00
Rejeesh Kutty 84ced344d9 gtlb- up-sync make w1c 2015-09-03 16:16:22 -04:00
Rejeesh Kutty f1d416a98b daq2/a10gx- ethernet fix 2015-09-02 14:31:15 -04:00
Rejeesh Kutty 1fff1076b1 daq2/a10gx- ethernet fix 2015-09-02 14:31:15 -04:00
Rejeesh Kutty 01c0fdc809 daq2/a10gx- ethernet fix 2015-09-02 14:31:15 -04:00
Istvan Csomortani 1ecd615f92 common/mitx045 : Fix the vdma interface of axi_hdmi_core 2015-09-02 16:33:30 +03:00
Lars-Peter Clausen 9fb336e464 usdrx1: Add DDR FIFO
The converters on the usdrx1 generate 2.5GB/s. This more than we can
transport over the HP interconnects to the system memory.

Add a dedicated DDR FIFO to design which can be used to buffer the data
before it is transferred to the main memory.

Also increase the interconnect clock rate from 100MHz to 200MHz and the DMA
FIFO size from 4 to 8, so we can transfer the captured data faster to the
main memory.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-01 11:29:36 +02:00
Lars-Peter Clausen bbada6ed8f usdrx1: Add overflow flag to ILA
It's useful to know if and when a overflow happens.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-01 11:29:36 +02:00
Lars-Peter Clausen c67aecc1eb usdrx1: Disable SYNC_TRANSFER_START for the DMA
There is no sync signal in this design, so the flag needs to be set to 0.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-01 11:29:36 +02:00
Lars-Peter Clausen e0b5044aa3 axi_dmac: Disable dummy AXI ports for Xilinx IPI
The memory mapped AXI interfaces for the AXI-DMAC are uni-directional.
Which means they are either write-only or read-only. Unfortunately the
Altera tools can't handle this, so we had to add dummy signals for the
other direction.

The Xilinx tools on the other hand handle uni-directional AXI interfaces
and in fact IPI can do a better job and use less resources when creating
the AXI interconnects when it knows that the interface is uni-directional.
So always disable the dummy ports for the IPI package.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-01 11:29:36 +02:00
Lars-Peter Clausen c00a6af4db usdrx1: Add DDR FIFO
The converters on the usdrx1 generate 2.5GB/s. This more than we can
transport over the HP interconnects to the system memory.

Add a dedicated DDR FIFO to design which can be used to buffer the data
before it is transferred to the main memory.

Also increase the interconnect clock rate from 100MHz to 200MHz and the DMA
FIFO size from 4 to 8, so we can transfer the captured data faster to the
main memory.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-01 11:21:45 +02:00
Lars-Peter Clausen b73430d7ee usdrx1: Add overflow flag to ILA
It's useful to know if and when a overflow happens.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-09-01 11:21:45 +02:00