Posts

Having Issues Launching Older Version of SDK?

Often times a version of a program can have random glitches that prevent us from executing simple tasks that wouldn't normally be an issue. We encountered this problem when trying to launch SDK 2016.2 in the newer version of Ubuntu. To avoid this glitch: - Navigate to /opt/Xilinx/SDK/2016.2 in the terminal - ls - You should see a file, settings.sh - Type command ./settings64.sh - Type command export SWT_GTK3=0 - Now type /opt/Xilinx/SDK/2016.2/bin/xsdk SDK SHOULD LAUNCH!! https://www.xilinx.com/support/answers/68490.html

External Mux Continued

Image
After exporting the design to SDK and importing Adam Taylor's Software Files, we can now import a signal (voltage). First we must modify Adam's .h and .c files to read the VP and VN. In helloworld.c change:  XSysMon_SetSeqChEnables( SysMonInstPtr,                                               XSM_SEQ_CH_AUX00|                                               XSM_SEQ_CH_AUX08); to... XSysMon_SetSeqChEnables( SysMonInstPtr,                XSM_SEQ_CH_VPVN ); AND ...

Adam Taylor MicroZed Chronicles: The XADC's External Mux

Image
Continuing with Adam Taylor's tutorials in his MicroZed Chronicles on the XADC. This post relates to issue 182 , which can be found using the link at the bottom of the page. What I learned from Adam's Tutorial: The XADC has external analog multiplexer capability. It can interface with up to 17 analog inputs. One being the the Vp/Vn pair of inputs and the other 16 auxiliary differential pairs that share pins with the logic I/O. So, we can sample up to 17 different analog signals along with the on-chip supply voltages and temperatures. An External Multiplexer provides the ability to sample up to 16 analog inputs. We only need 4 I/O lines for the multiplexer address because the Vp/Vn pair are dedicated and are outside of the multiplexer address. Integrated Logic Analyzers (ILAs) monitor the internal signals of the design. Vivado Create New Block Design Add Zynq Processing System Add xadc wizard Add 2 ILAs Double Click ila_1 Select Native > Change the number...

Opening/Importing Projects in SDK

To open a project in SDK you must import it: Open SDK > Choose workspace File > Import > General > Existing Projects into Workspace > Next Browse for the root directory that contains your project Select copy projects into Workspace > Finish Click on the Workspace icon to open your project if it doesn't open automatically Helpful Link for importing an existing Software Project:  https://www.xilinx.com/support/documentation/sw_manuals/xilinx12_2/SDK_Doc/tasks/sdk_t_import_exist_proj.htm

Adam Taylor Microzed Chronicles: Combining XADC and Inerrupts with Real World Signals

Image
Continuing with Adam Taylor's tutorials in his MicroZed Chronicles on the XADC. This post relates to issue 107 , which can be found using the link at the bottom of the page. What I learned from Adam's Tutorial: This tutorial is a continuation of issue 105 and 106. We can now define the hardware we want to pull into SDSoC from Vivado. Knowing and designing for latency has ensured that we will never miss an XADC sample. Recall from Issue 104 that we can sample at 961.54 ksamples/sec (ksps) using a 100MHz AXI clock frequency. So, a new sample and corresponding interrupt will occur every 1.04 microseconds. Vivado Modifying our Vivado design from the interrupt latency posts. We will remove axi_timer_0 and replace it with the xadc_wiz. Be sure to save this as a new project so you don't lose the old design.  1. Delete axi_timer_0 2. Add xadc_wiz > Run Connection Automation 3. Right Click on Vp_Vn and make external 4. Connect (xadc_wiz) ip2intc_irpt to (PS) core0...

Installing Waveforms

Image
On Mac OSX 1. Go to digilentinc.com 2. Find Waveforms 2015 > Download Here The top tab should read: Diligent Documentation > Reference > Software > Waveforms > Waveforms 2015 3. Go to the latest downloads and select the download for Mac OSX 4. Download and then double click to open 5. Drag Waveforms into Applications 6. To support analog discovery install the followng driver: Double click DigilentFtdiDriver.pkg 7. We need to change the security settings if it can't download. 8. Go to the apple in the top left hand corner of your screen > System Preferences > Security and Privacy > Open Anyway > Continue > Continue > Continue > Agree to terms > Install > Enter password for the computer > Install software 9. Open Applications folder > double click on Waveforms to open Again, we must change the security and privacy settings. 10. Security Systems > open anyway > open. On Linux (Ubuntu) 1. Go to digilentinc.com 2. Fi...

Adam Taylor MicroZed Chronicles: Issue 106 Interrupt Latency Part 2

Image
Continuing with Adam Taylor's tutorials in his MicroZed Chronicles on the XADC. This post relates to issue 106, which can be found using the link at the bottom of the page. What I learned from Adam's Tutorial: This tutorial is a continuation of issue 105. Here, the interrupt latency we will be measuring is the time required to start executing the ISR. We left off in Vivado having just created the Bitstream. Now we are ready to move into SDK. Export Hardware > Check Include Bitstream > Launch SDK Once in SDK: File > New > Board Support Package > Finish File > New > Application Project > Hello World > Finish Copy and paste in the .C file from Adam Taylor's github (https://github.com/ATaylorCEngFIET/MicroZed-Chronicles) and replace it with helloworld.c and SAVE IT. Next launch minicom > Program FPGA > Run You should see something similar to this within minicom:   This is reading the value on the AXI Timer as soon as the ...