• Content Count

  • Joined

  • Last visited

About wanderso

  • Rank

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I'm looking to create a Verilog interface for the Digilent PmodMIC3, since the provided IP core has been too slow to get a 48KHz sample rate (the problem isn't actually with the IP core, but with the interrupt service routines, each of which seems to take at least 120 cycles). The datasheet says the maximum safe serial clock rate for the PmodMIC3 's onboard microphone is 20MHz. I want to create some sample Verilog programs that directly read the PMod off the jumper port ('jd' if it's relevant), and that'll mean creating a 20 MHz clock that connects to jd[4]. Does that make sense?
  2. I have the sample constraint file for my Arty board. I notice that where it says a clock signal is created in the file, it specifies a specific port that the clock is found on, specifically PACKAGE_PIN E3. set_property -dict { PACKAGE_PIN E3 IOSTANDARD LVCMOS33 } [get_ports { CLK100MHZ }]; #IO_L12P_T1_MRCC_35 Sch=gclk[100] create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports {CLK100MHZ}]; This creates a 100 MHz clock for the Arty. However, my current project needs a 20 MHz clock. I lack the FPGA knowledge to know whether these two lines of code are
  3. Ah-ha! That is a very small stack and heap. Is there some way I can see how much memory is available so I know how much I can safely increase their size?
  4. I'm working on some embedded software on the Arty board and programming in Microblaze. When I try to allocate an array of sixteen-bit numbers, length 512, it works just fine, but the same array set to length 1024 causes malloc to return NULL. After some experimentation and testing, I believe this is because the Microblaze processor has run out of internal memory. However, the Arty board is supposed to have 256MB of DDR memory. An interface to the memory already existed in my block diagram (copied from Getting Started With Microblaze with some PMods added), so I assumed that the DDR memor
  5. I've been working in C, but I know C++ well enough to translate. That said, I can't find the <DSpi.h> library that's used in there for the translation.
  6. I have a PmodMIC3 I would like to use with my Microblaze processor on a digilent Arty board. While trying to get the two devices to communicate through Vivado and the Vivado SDK, I have several questions that I could not find answers to. First, I assume that since there is no specific PmodMIC3 IP block, I should be using the generic PmodBridge IP block in Vivado. The 6-pin PmodMIC3 is plugged into the top row of the 2x6 Pmod output port, so the PmodBridge has it's top row interface set to SPI and the bottom row set to 'Disabled'. The PmodBridge then leads to the AXI Quad SPI block, which
  7. I am using the Arty board, with this project. https://github.com/Digilent/Arty
  8. In order to figure out how to connect the on-board switches, buttons, and LEDs to Microblaze, I tried to follow the instructions in this Learnable. Sadly, the 'create_project.tcl' script seems out of date and can't be used to create a board design. I get the following error messages - ERROR: This script was generated using Vivado <2015.4> and is being run in <2016.3> of Vivado. Please run the script in Vivado <2015.4> then open the design in Vivado <2016.3>. Upgrade the design by running "Tools => Report => Report IP Status...", then run write_bd_tcl to creat
  9. Yeah, I saw a "06/15/2016: fixed usleep delays" in the code's revision changes, but the usleeps were still assumed to be microseconds in length, not milliseconds. Probably just didn't get committed right. I tried manually changing the usleep duration in the Xilinx/Vivado SDK (actually just reskinned Eclipse), but the file system overwrote my changes when I tried to push everything to the FPGA. Is there something special I have to do to fix this myself, or should I just wait for this to get corrected?
  10. I've been trying to run a OLEDRGB display on my Arty, using the sample pMod learnable and Vivado on my new machine. It had worked perfectly on my old machine, but unfortunately on the new machine I'm getting some issues with the clocking - it's running roughly 1000 times slower (I checked) than it actually should be. I get some critical warnings when I try to make a bitstream: [Common 17-55] 'get_property' expects at least one object. ["/home/wanderso/Tools/VivadoProjects/ARTY_Display_Attempt_2/ARTY_Display_Attempt_2.srcs/sources_1/bd/system/ip/system_PmodOLEDrgb_0_0/ip/PmodOLEDrgb_axi_qu