Commit Graph

6261 Commits (3e297f54dde3c58d39db50a4716c10ace588329e)

Author SHA1 Message Date
Lars-Peter Clausen 3a02998e9a axi_ad9152/axi_ad9152_ip.tcl: Fix typo
axi_ad9152_constr.v -> axi_ad9152_constr.xdc

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-24 09:41:43 +02:00
Rejeesh Kutty 272148eee5 rfsom: sdio 50mhz 2015-04-23 15:30:50 -04:00
Rejeesh Kutty 7611c2ae17 kcu105: ddr mig rbc to rcb 2015-04-23 15:30:48 -04:00
Istvan Csomortani bb185296d7 fmcadc2_vc707: Increase the BRAM FIFO size to its maximum: it can store 1M samples.
The 2^18 dma address width with a 64 dma data width will result a FIFO, what will be implemented by 512 RAMB36 cells.
This is a the maximum BRAM FIFO depth in case of the VC707.
2015-04-23 18:00:00 +03:00
Istvan Csomortani 6551672ce5 fmcadc2_vc707: Increase the BRAM FIFO size to its maximum: it can store 1M samples.
The 2^18 dma address width with a 64 dma data width will result a FIFO, what will be implemented by 512 RAMB36 cells.
This is a the maximum BRAM FIFO depth in case of the VC707.
2015-04-23 17:56:35 +03:00
Adrian Costina a9924e6401 util_gmii_to_rgmii: Added constraints 2015-04-23 16:53:57 +03:00
Lars-Peter Clausen f232a36141 common: Place HDMI interface registers into the IOB
The paths from the HDMI interface registers to the IO pads are
unconstrained. This means the P&R can in theory put the register anywhere
which could lead to stability issues on the interface, depending on what
else is in the fabric. To get predictable delays for the register to IO pad
path place the register into the IOB section.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-23 14:33:47 +02:00
Lars-Peter Clausen bd6c76f4ab fmcomms5: Set DMA AXI type to AXI3 on ZYNQ
The HP memory ports on ZYNQ are AXI3. The AXI-DMAC supports both native AXI3
and AXI4, by configuring it for AXI3 there is no need for a protocol
converter inside the interconnect, that connects the DMAC to the HP port.

In addition to that also set the data width for the DMAC on the HP port side
to 64 so there is no need for a memory width converter in the interconnect.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-23 14:33:47 +02:00
Lars-Peter Clausen 4ed7c9aee9 fmcomms2_pr: zc706: Fix ddr and fixed_io signal names
The toplevel input/output signal names are lower case, but the signals
connected to the system_wrapper are upper case. Since verilog is case
sensitive this leaves the toplevel input/output signals unconnected. Fix
this by using lower case names everywhere.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-23 14:33:47 +02:00
Lars-Peter Clausen 558f2e89af imageon: zc706: Fix ddr and fixed_io signal names
The toplevel input/output signal names are lower case, but the signals
connected to the system_wrapper are upper case. Since verilog is case
sensitive this leaves the toplevel input/output signals unconnected. Fix
this by using lower case names everywhere.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-23 14:33:47 +02:00
Lars-Peter Clausen 1bb5b6e55f adv7511: zc706: Fix ddr and fixed_io signal names
The toplevel input/output signal names are lower case, but the signals
connected to the system_wrapper are upper case. Since verilog is case
sensitive this leaves the toplevel input/output signals unconnected. Fix
this by using lower case names everywhere.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-23 14:33:47 +02:00
Adrian Costina bd06bae8c2 library: Modified the adi_ip.tcl script
The constraints processing order changed to "late" instead of "early", in order for all the clocks in the system to be already created when the IP constraints are applied
2015-04-23 14:31:23 +03:00
Adrian Costina a61a195e3f Makefiles: Updated makefiles to add the new constraints as dependecies 2015-04-23 11:16:39 +03:00
Adrian Costina d42c0bc431 axi_jesd_gt : Added CDC and reset constraints 2015-04-23 11:03:51 +03:00
Adrian Costina 1b4e6bdc80 axi_mc_speed : Added CDC and reset constraints 2015-04-23 10:50:49 +03:00
Adrian Costina 6d28d217f1 axi_mc_current_monitor: Added CDC and reset constraints 2015-04-23 10:49:43 +03:00
Adrian Costina d0b2d531bc axi_mc_constroller: Added CDC and reset constraints 2015-04-23 10:47:35 +03:00
Adrian Costina d0571a912f axi_hdmi_tx: Added CDC and reset constraints 2015-04-23 10:46:04 +03:00
Adrian Costina cc7d9f9d54 axi_clkgen: Added CDC and reset constraints 2015-04-23 10:44:37 +03:00
Adrian Costina d1558df625 axi_ad9739a: Added CDC and reset constraints 2015-04-23 10:42:27 +03:00
Adrian Costina 97dc7ea004 axi_ad9680: Added CDC and reset constraints 2015-04-23 10:40:41 +03:00
Adrian Costina f1f8c14813 axi_ad9671: Added CDC and reset constraints 2015-04-23 10:39:11 +03:00
Adrian Costina 744a15a0ba axi_ad9652: Added CDC and reset constraints 2015-04-23 10:37:15 +03:00
Adrian Costina eca616a3ae axi_ad9643: Added CDC and reset constraints 2015-04-23 10:35:12 +03:00
Adrian Costina a62415b0ab axi_ad9625: Added CDC and reset constraints 2015-04-23 10:33:51 +03:00
Adrian Costina b4a09daf89 axi_ad9467: Added CDC and reset constraints 2015-04-23 10:30:33 +03:00
Adrian Costina ac79c65b81 axi_ad9434: Added CDC and reset constraints 2015-04-23 10:28:46 +03:00
Adrian Costina a6cb6b7672 axi_ad9265: Added CDC and reset constraints 2015-04-23 10:27:29 +03:00
Adrian Costina 08f19d489f axi_ad9250: Added CDC and reset constraints 2015-04-23 10:25:19 +03:00
Adrian Costina 734fdab326 axi_ad9234: Added CDC and reset constraints 2015-04-23 10:23:22 +03:00
Adrian Costina 09f05cf8e9 axi_ad9152: Added CDC and reset constraints 2015-04-23 10:21:52 +03:00
Adrian Costina 3526145992 axi_ad9144: Added CDC and reset constraints 2015-04-23 10:19:43 +03:00
Adrian Costina e7ce2b200d axi_ad9122: Added CDC and reset constraints 2015-04-23 10:17:53 +03:00
Adrian Costina 691c54e0dd axi_ad6676: Added CDC and reset constraints 2015-04-23 10:16:29 +03:00
Rejeesh Kutty e25cfb9d9f rfsom: ddr configuration 2015-04-22 13:45:11 -04:00
Lars-Peter Clausen 7b073aaec1 axi_dmac: Always generate local interrupt for asynchronous interfaces
While the reset for the memory mapped AXI master is synchronous to some
clock it is not necessarily synchronous to the clock used for that
interface. So always generate a local reset signal to avoid problems that
could result from this.

While we are at it also update the code to only generate a local reset if
the interface is asynchronous to the register map, otherwise use the
register map reset.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-22 13:22:23 +02:00
Lars-Peter Clausen 5edcc753ec axi_dmac: Ignore timing on more debug signals
Ignore the timing path from the current DMA address to the register map,
this is just a debug signal at the moment.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-22 13:22:23 +02:00
Lars-Peter Clausen ae808ba942 axi_dmac: Fix block ram constraint
If the internal FIFO is larger than one block ram there will be multiple
BRAMs called ram_reg[0], ram_reg[1]. Modify the BRAM constraint rule so that
it matches these as well.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-21 19:56:42 +02:00
Istvan Csomortani a100ecd308 util_dacfifo: Update BRAM DAC Fifo
The fifo will be placed between the DMAC and the Upack module, all the interfaces were updated.
2015-04-21 15:45:56 +03:00
Lars-Peter Clausen 988bf60747 axi_ad9361: Add ASYNC_REG properties to CDC regs and add missing -datapath_only
Set the ASYNC_REG property on the bit synchronizer CDC control regs. This
hint to Vivado that the registers are used for CDC purposes.

Also use -datapath_only for the set_max_delay constraints on the CDC data
path to remove the hold time requirement.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-21 10:15:02 +02:00
Lars-Peter Clausen 996d0fe8a4 axi_hdmi_tx: Only mark HDMI clocks asynchronous to each other
Currently the axi_hdmi_tx core constraints marks all its clocks asynchronous
to all other clocks in the system. This is a bit unfortunate as these
constraints are not restricted to the axi_hdmi_tx, but affect all cores in
the system, some of which might actually have timing constraints on CDC
paths.

The proper way to fix this is to add constraints for the axi_hdmi_tx core
CDC paths. For now only mark the interface clock asynchronous to the HDMI
clock, as this is easy to do and an improvement over the current situation,
as other cores are no longer affected.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-17 20:18:51 +02:00
Lars-Peter Clausen e3b834ea02 axi_ad9361: Add CDC constraints
Add proper constraints for all the CDC synchronizer paths to the axi_ad9361
core.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-17 20:12:06 +02:00
Lars-Peter Clausen 3fd830b038 fmcomms2: Use AXI3 interface for the DMA on ZYNQ
On ZYNQ the HP interconnects have a AXI3 interface. The DMA controller
supports both AXI4 and AXI3. By switching to AXI3 there is no need to create
a protocol converter between the DMA and the HP port.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-17 19:51:37 +02:00
Lars-Peter Clausen 71d4f3a474 fmcomms2: Don't mark synchronous paths as asynchronous for the DMAs
The AXI master interface and the register map AXI slave interface use the
same clock. No need to mark the interfaces as asynchronous. This removes the
need for CDC logic on those paths.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-17 19:51:37 +02:00
Lars-Peter Clausen 0dc3bb8905 axi_dmac: Fix src_reponse_fifo control signals
The src_response_fifo has been removed from the design, but we still need to
assert the ready and empty control signals for things to work properly.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-17 19:51:37 +02:00
Lars-Peter Clausen 42a9da0659 axi_dmac: Only apply CDC constraints if clocks are asynchronous
We really only want to apply the CDC constraints if the clocks are actually
asynchronous. Unfortunately we can't use if ... inside a xdc script. But we
can use expr which has support for a ? b : c if-like expression. We can use
that to create helper variables that contains valid clock when the clock
domains are asynchronous or {} if they are not. Passing {} as
set_false_path/set_max_delay as either the source or destination will cause
it to abort and no constraints will be added.

Also add -quiet parameters to avoid generating warning if the constraints
could not be added.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-17 17:20:25 +02:00
Lars-Peter Clausen 9c249d25ab axi_dmac: Make internal resets active high
All the FPGA internal control signals are active high, using a active low
reset inserts a extra invert LUT. By using a active high reset we can avoid
that.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-17 17:20:25 +02:00
Adrian Costina dc2b37bd0c Makefile: Added top level Makefile. Modified behavior of clean and clean-all
Clean ran for a project will clean only the project files.
Clean-all ran for a project will clean also the library files on which the project depends.
The clean commands will only remove specific files and directories.

The top Makefile allows several options(per suggestion from jameyhicks):
make fmcomms1.zed will run "make all" in projects/fmcomms1/zed/
make clean will run "make clean" for all the projects
make clean-all will run "make clean" for all the projects and libraries
make lib will run "make all" for the library files
2015-04-17 17:22:38 +03:00
Adrian Costina fd2f5836f0 axi_dmac: Fixed type in the altera hardware file 2015-04-17 14:59:47 +03:00
Lars-Peter Clausen dfc22fc7de axi_i2s_adi: Overhaul CDC
* Generate a separate synchronous reset for the data clock domain.
* Add missing stage to toggle synchronizers.
* Give a common prefix to CDC elements and add the proper constraints to the
  XDC file
* Remove some unnecessary resets

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2015-04-16 17:48:28 +02:00