Geralt

Members
  • Content Count

    7
  • Joined

  • Last visited

  1. The normal ZedBoard (bigger size than MicroZed) also provides those expansion connectors, right? Do they have a specific name (e.g. FMC)? Thanks @all so far!
  2. Do you know if the Zybo board provides any additional GPIO connectors apart from the Pmod ports? The ZedBoard has an FMC connector in addition to the Pmod connectors but the Zybo does not seem to have anything apart from Pmod. As I wrote in the previous post: Higher rates for data transfer and sufficient RAM for buffering if there is latency (or breaks in writing cycles on the SD card) in the data transfer. Unfortunately, you have far less peripherals than on MCUs.
  3. Hello! In the hardware user's guide of the ZedBoard I read the following: "Four Pmod connectors interface to the PL-side of the EPP. These will connect to EPP Bank 13 (3.3V). One Pmod, JE1, connects to the PS-side of the EPP on MIO pins [7,9-15] in EPP MIO Bank 0/500 (3.3V). Uses for this Pmod include PJTAG access (MIO[10-13]) as well as nine other hardened MIO peripherals (SPI, GPIO, CAN, I2C, UART, SD, QSPI, Trace, Watchdog). Two of the Pmods, JC1 and JD1, are aligned in a dual configuration and have their I/O routed differentially to support LVDS running at 525Mbs." My question is: Can I use ALL of those Pmod ports to connect the external ADC add-on boards "Pmod AD1" and "Pmod AD2" to them? Or can those ADC add-on boards only be used with a certain type of Pmod port, for example only with a Pmod connector that is connected to the PL, only with a Pmod connector that does not have differentially routed conductors for LVDS, etc.? Best regards!
  4. I thought that this would be an easy part. I have not worked with these boards and ADCs before (mostly with microcontrollers) but I thought that you simply send a "start of conversion" signal to any ADC, external as well as internal. Or you keep those ADCs running continuously and just sample the output registers with the desired sampling frequency. I do not have an idea which problems you are addressing in your post. The only reason why I considered the Zynq-7000 boards is that some colleagues already programmed them and have a bit experience with them. First we wanted to use a microcontroller (most of them provide A LOT MORE peripherals than those Zynq boards) but the problem was the data transfer of the MCU to a PC at such high sampling frequencies: If there is a little latency in UART, SD card communication or Ethernet, MCUs have too little RAM to buffer all the data that is accumulated during this time.This is the reason why my colleagues recommended those Zynq development boards. If you know better alternatives please feel free to suggest them! That is basically the reason why I opened this thread.
  5. Thanks for the hint. That is why I discarded the Python (PYNQ-Z1) approach. I will now consider using one of the ZedBoards/MicroZed/Zybo. I think they provide a lot more flexibility and overhead in terms of connectors and computational power. Of course you can never achieve "simultaneous" sampling. There is always some nanoseconds delay/difference. At some point you even have to consider the signal propagation of the clock or convert signal over the PCB conductors. But I think if we use separate ADC peripheral boards and those two XADCs, we could firstly solve the problem of inter-channel-coupling and secondly achieve a sampling pattern that is "quite simultaneous". I think (or better hope ) that this will not make a big difference since the input signals are limited in their bandwidth far below the sampling frequency. We would have to manufacture some addtional hardware anyway to linearly scale the voltages into the input voltage range of the pins (which is quite small for the XADC to be honest). So adding hardware for signal-conditioning would not be a task that requires much greater effort I think.
  6. Thank you very much for the answers! So the XADC can sample up to 8 different signals per ADC. Because it is dual that would result in 16 different signals maximum. But because of the interleaved sampling (one signal after another) you would not reach 1 MSPS, but only 1/8 MSPS (but two signals sampled simultaneously each time). Did I get that right? So if I would need to sample all the six analog signals simultaneously, I could use the two XADC modules and four additional ADC cards that I connect at those Pmod ports of the development board. That should work, right? Do you know whether those development boards have connectors with simple digital GPIOs for the encoder signals and the quadrature frequency signal? I mean pins apart from the Pmod ports that would all be occupied if I connect ADC cards to them. Concerning data transfer: If I buy a board with 1 GB RAM, I should be able to dump all the measurement data of about one whole minute into the RAM. After finishing the measurement, the data could be transferred from RAM to the PC. That could either be done by UART, Ethernet or even an SD card, because after finishing the measurement I do not need any real-time performance anymore. What would you say to this approach? Best regards!
  7. Hello! Me and my colleagues want to do a project and we are thinking about using one of the various development boards with Zynq-7000 for that purpose. Basically we just want to sample and measure some signals and transfer them to a PC (preferably via gigabit-ethernet) for evaluation. So the Zynq would have to do a real-time hardware-in-the-loop task. The signals we want to measure are as follows: 3 analog signals sampled @ 1 kHz by an ADC 3 analog signals sampled @ 100 kHz by an ADC 2 incremental encoders the frequency of a quadrature pulse signal (we would need a pin for edge-detection and a counter that counts the time between the edges) However, the documentation of those Zynq-7000 development boards on the internet is quite poor. In most hardware user guides I only found that the Zynq-7000 only has the XADC which is dual, but we would need to sample 6 different signals. I have neither found any support for incremental encoder interfaces, nor any GPIOs that are capable of accessing a software timer for edge-detection. In the Xilinx forum somebody recommended using the PYNQ-Z1 but I do not know how freely you can program the Zynq-7000 with Python. As I said, we would need at least two interfaces for incremental encoders and I have seen some examples how to implement this on an FPGA. But those examples always included coding in VHDL. Is it possible to program the Zynq-7000 in Python with the same degree of freedom as in VHDL? Which development board (and maybe additional boards/cards) would you suggest to use and why? Best regards!