Commit Graph

5746 Commits (93f46ef6e34b3afb220aa32b9ce174ddcfab92e7)

Author SHA1 Message Date
Lars-Peter Clausen 3339f68926 axi_dmac: axi_dmac_hw.tcl: Set read and write issuing capabilities
The axi_dmac can issue up to FIFO_SIZE read and write requests in parallel.
This is done in order to maximize throughput and compensate for for
latency.

Set the {read,write}IssuingCapability properties accordingly on the AXI
master interfaces. Otherwise qsys might decide to insert bridges that
artificially limit the number of requests, which in turn might affect
performance.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 15:27:02 +01:00
Lars-Peter Clausen 6f36d013d3 axi_dmac: axi_dmac_hw.tcl: Set default DMA_LENGTH_WIDTH to 24
This matches the default parameter of the HDL code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 15:26:17 +01:00
Lars-Peter Clausen 374c49ff48 axi_dmac: axi_dmac_hw.tcl: Automatically detect clock domains
Qsys allows to query to query the clock domain that is associated with a
clock input of a peripheral. This allows to automatically detect whether
the different clocks of the DMAC are asynchronous and CDC logic needs to be
inserted or not.

Auto-detection has the advantages that the configuration parameters don't
need to be set manually and the optional configuration will be choose
automatically. There is also less chance of error of leaving the settings
in a wrong configuration when e.g. the clock domains change.

In case the auto-detection should ever fail configuration options that
provide a manual overwrite are added as well.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 16:06:37 +02:00
Lars-Peter Clausen 4f009620b5 axi_dmac: axi_dmac_hw.tcl: Cleanup configuration parameters
Group configuration parameters by function, provide human readable labels
as well as specify the allowed ranges for each parameter.

This prevents accidental misconfiguration and also makes it easier to
inspect (or change) the configuration in the Qsys GUI.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 16:06:37 +02:00
Lars-Peter Clausen 63f280676a avl_adxcfg: Consistently use non-blocking assignments
In this particular case the behaviour is the same with non-blocking and
blocking assignments, but that could change if the code is modified in the
future. To avoid any potentially issue due to this consistently use
non-blocking assignments.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 16:06:00 +02:00
Lars-Peter Clausen bd8d676346 library: Use ad_ip_intf_s_axi were applicable
Use the ad_ip_intf_s_axi helper function to create the axi4lite slave
interface for memory mapped peripherals. This slightly reduces the amount
of boilerplate code in the peripheral's *hw.tcl

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 15:52:37 +02:00
Lars-Peter Clausen 7a04b4723b adi_ip_alt.tcl: ad_ip_intf_s_axi: Allow to specify AXI interface address width
The address width of the AXI interface depends on the size of the register
and can differ from peripheral to peripheral. Add a parameter to the
function that allows to specify the address width, this allows to use the
function for more peripherals.

Keep the current value of 16 bits as the default if the parameter is not
specified.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 15:21:52 +02:00
Lars-Peter Clausen e1e0406a49 altera: axi_adxcvr: Reduce register map interface address width
The axi_adxcvr register map only uses a single 4k page, make this explicit.

This will allow for tighter packaging in the limited available total
register map space.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-24 15:21:52 +02:00
Rejeesh Kutty 8b31fe73e0 hdlmake.pl updates 2017-07-21 10:37:56 -04:00
Rejeesh Kutty bc4526cc8a axi_ad9361/altera- add 10 support 2017-07-21 10:33:44 -04:00
Rejeesh Kutty 9b26763e3b ad9361/xilinx- missing up_rstn 2017-07-21 09:08:28 -04:00
Lars-Peter Clausen c1d6ee8f1b Partially revert "hdlmake.pl - updates"
This partially reverts commit a8ade15173.

Remove the nonsensical Makefile dependencies that got added by accident.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-21 15:06:22 +02:00
Adrian Costina afbce10ab9 axi_dac_interpolate: Added matlab file for interpolation filters 2017-07-21 14:37:27 +03:00
Adrian Costina bf810bcc4b axi_adc_decimate: Added matlab file for filters 2017-07-21 14:36:27 +03:00
Nick Pillitteri 2d64d43475 ZCU102: SPI assign chip selects individually
Otherwise, Vivado 2016.4 sets all of the CSNs equal to CSN0. This fix is needed to get the FMCOMMS5 working properly on the ZCU102 (#36)
2017-07-21 09:22:10 +01:00
Rejeesh Kutty a8ade15173 hdlmake.pl - updates 2017-07-20 15:11:21 -04:00
Rejeesh Kutty d132ed45cd arradio- timing violations fix 2017-07-20 15:08:21 -04:00
Rejeesh Kutty 36a9ea40b1 altera- remove lvds/serdes/cmos cores 2017-07-20 14:19:40 -04:00
Rejeesh Kutty e1c95b23ea alt_serdes- remove c5 support 2017-07-20 14:16:32 -04:00
Rejeesh Kutty a27b30d380 library- remove c5 cores 2017-07-20 14:12:00 -04:00
Rejeesh Kutty 6c986d9b6a hdl/library- fix syntax errors/synthesis warnings 2017-07-20 14:07:32 -04:00
Lars-Peter Clausen 669a2da735 common: a10soc: Avoid unnecessary DMA clock domain crossing bridge insertion
Both the sys_hps.f2sdram_clock and the sys_dma_clk.clk signal are in the
same clock domain. They are both driven by the same clock. And even though
qsys is capable of detecting this it seems qsys interconnect is not able to
infer this and inserts a extra clock domain crossing bridge between the DMA
and the HPS AXI system memory interface.

To avoid this connect the sys_dma_clk.clk to the sys_hps.f2sdram_clock so
that all components are driven by the same qsys clock signal.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-20 19:45:27 +02:00
Lars-Peter Clausen 4f5f15e36e up_clock_mon: Explicitly truncate d_count during up_d_count assignment
The MSB of the d_count signal is used as a overflow marker to stop the
counter from incrementing in the monitored clock domain. It is not exported
through the register map and truncated when assigned to the up_d_count
signal.

Make the truncation explicit to make it clear that this is not a mistake
and to avoid warnings about implicit truncation.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-20 19:45:27 +02:00
Lars-Peter Clausen 634340c170 jesd204: jesd204_up_common: Rename clock monitor instance to i_clock_mon
The generic Altera clock monitor constraints expect the instance to be
called i_clock_mon. Adjust the code accordingly.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-20 19:45:26 +02:00
Lars-Peter Clausen 4e8327efd2 jesd204: jesd204_up_ilas_mem: Fix blocking assignment
In this particular case the behaviour is the same with non-blocking and
blocking assignments, but that could change if the code is modified in the
future. To avoid any potentially issue due to this consistently use
non-blocking assignments.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-20 19:45:26 +02:00
Lars-Peter Clausen cc27c5e00c axi_dmac: axi_dmac_hw.tcl: Set read and write issuing capabilities
The axi_dmac can issue up to FIFO_SIZE read and write requests in parallel.
This is done in order to maximize throughput and compensate for for
latency.

Set the {read,write}IssuingCapability properties accordingly on the AXI
master interfaces. Otherwise qsys might decide to insert bridges that
artificially limit the number of requests, which in turn might affect
performance.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-20 19:45:26 +02:00
Lars-Peter Clausen 62a06f6958 axi_dmac: axi_dmac_hw.tcl: Set default DMA_LENGTH_WIDTH to 24
This matches the default parameter of the HDL code.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-20 19:45:26 +02:00
Rejeesh Kutty 3ef00475bc arradio/c5soc- clocking changes 2017-07-20 13:05:07 -04:00
Rejeesh Kutty a63e268d6e arradio/c5soc- interface updates 2017-07-20 13:05:07 -04:00
Rejeesh Kutty fca88caf93 arradio/c5soc- interface updates 2017-07-20 13:05:07 -04:00
Rejeesh Kutty f3ad2e24c1 rfsom2/ccbox- rtc int 2017-07-20 09:25:09 -04:00
Rejeesh Kutty 8c60a2a850 rfsom/ccbox- rtc int 2017-07-20 09:22:45 -04:00
Istvan Csomortani 04843795d8 Merge branch 'hdl_2016_r2' 2017-07-20 11:42:47 +01:00
Rejeesh Kutty c11d7d9fda rfsom2/ccbox- tsw s5 fix 2017-07-19 14:23:54 -04:00
Adrian Costina ed12efc620 arradio: Revert tcl related changes, to fix DDR Bandwidth related issue 2017-07-19 15:17:55 +03:00
Rejeesh Kutty d969b9ea9f rfsom2/ccbox- tsw updates 2017-07-18 13:53:44 -04:00
Rejeesh Kutty becc3e8628 rfsom/ccbox- tsw updates 2017-07-18 13:51:37 -04:00
Lars-Peter Clausen 2e173201d4 daq2: daq2_qsys.tcl: Use sys_dma_clk
Use the sys_dma_clk clock module for clock and reset signals of the data
path, rather than using the A10GX specific sys_ddr3_cntrl signals. This
enables compatibility for all Altera/Intel platforms.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-17 17:38:20 +02:00
Lars-Peter Clausen 369fe69d34 jesd204: tx_ctrl: Fix status_sync assignment
The SYNC signal that gets reported through the status interface should be
the output (second stage) of the synchronizer circuit.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-17 17:13:02 +02:00
Lars-Peter Clausen 1f2e189ff2 jesd204: jesd204_up_sysref: Remove unused signals
These signals are leftovers of an earlier implementation version, remove
them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-17 17:13:02 +02:00
Lars-Peter Clausen a9fe0fa530 jesd204: jesd204_up_common: Add missing core_cfg_transfer_en declaration
Make sure the core_cfg_transfer_en signal is declared before they are used.
Strictly speaking the current code is correct and synthesis correctly, but
declaring the signals make the intentions of the code more explicit.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-17 17:13:02 +02:00
Lars-Peter Clausen d164209355 jesd204: axi_jesd204_up_rx_lane: Fix padding signal width
The upper padding zeros should be 26 bits wide.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-17 17:13:02 +02:00
Lars-Peter Clausen fa46688be5 jesd204: Add names for generate for-blocks
Be more standard compliant and assign names to generate for-blocks. This is
required for Altera/Intel support.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-17 17:13:02 +02:00
Lars-Peter Clausen cdf005ab83 axi_dmac: request_arb: Add missing req_gen_{valid,ready} signal declaration
Make sure the req_gen_valid and req_gen_ready signals are declared before
they are used. Strictly speaking the current code is correct and synthesis
correctly, but declaring the signals make the intentions of the code more
explicit.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2017-07-17 17:13:02 +02:00
Istvan Csomortani 2d9b3491c6 axi_dmac: Update to verilog-2001 coding style
Fix all the non standard parameter declarations in all verilog files.
2017-07-15 09:25:14 +01:00
Istvan Csomortani 4832bc1a0c axi_dacfifo: Fix port width at axi_dacfifo_wr 2017-07-14 16:47:34 +03:00
Adrian Costina 711cb66985 adrv9371x: Write parameter as hexa value to clear Vivados ambiguity between decimal and binary 2017-07-14 10:20:57 +03:00
Adrian Costina 128be6fb69 arradio: Changed clock domain of the ADC and DAC path to half the interface clock 2017-07-12 15:59:12 +03:00
Adrian Costina f6f7cff8a0 util_clkdiv: Added altera version 2017-07-12 12:12:30 +03:00
Istvan Csomortani 4ea6b0d6d8 jesd204: Update constraints for tx register map
In some cases, the 'core_ilas_config_data' registers will be infered as
FDRE, instead of FDSE. Therefor a max delay definition, which are using
the S pin as its endpoint, it can become invalid, nonexistent.
Generalize the path, using the register itself as endpoint.
2017-07-10 13:38:31 +01:00