I've really been having an interesting journey into the world of programmable logic. I've gotten a few projects built and used a few different tools. I've even used two different types of FPGA chips, and I'm starting to get a feel for how everything fits together. Mostly, though, I'm just blown away by how cool these things are.
Fortunately, everything's been relatively simple thus far. As I mentioned in my previous blog, I'm building circuits that I first built waaay back in my high school electronics class. The only difference is that, instead of hand wiring 7400 series logic chips, now I'm building the circuits in magically configurable silicon.
Back in the hand-wiring days, I would have gotten out the old oscilloscope or logic analyzer. With those 7400 series chips wired up on a solderless breadboard, I could simply stick the scope probe on pretty much any signal I wanted. In my FPGA-based implementation, however, all those test points are hidden inside the chip's package.
I considered sawing the top off the FPGA package, but then I decided I probably couldn't find any probes small enough. Rather than give up in despair, I decided to take the advice offered by Adam in his blog about ChipScope. I'm going to insert a virtual logic analyzer into my tiny FPGA chip. This will entail several steps:
Open up last week's project in ISE.
Create a new source of type "ChipScope Definition and Connection File" named "led_input_CS."
Open ChipScope and set all the appropriate parameters.
Insert the ChipScope core into our design.
Load the design into the FPGA.
Run it up the flagpole and see who salutes.
If you have a Spartan 6 XL9 Development Board (which we've discussed previously) and are following along with me, let's start by opening the "FND500count" project in ISE. Now we have to add a new source. In the New Source Wizard, pick "ChipScope Definition and Connection File," and name it "led_input_CS." There aren't any parameters to set. That will create the "led_input_CS.cdc" file as shown below:
Double-click on the "led_input_CS.cdc" file to bring up the ChipScope Pro Core Inserter tool. When you open ChipScope from within a project in this way, it automatically fills in the "Device Files" and "Device Settings" entries on the first screen for you, so you can click the "Next >" button to get to the screen labeled "Select Integrated Controller Options."
Duane Benson 8/13/2012 5:44:11 PM User Rank Blogger
Operator error
I have it working now. I'm not sure what I did back when I originally set up my license, but just for kicks, I went back and repeated the process today.
In the screen for redeeming your voucher, there are four possible products to select from when making the license file. The correct one to select is labeled:
"Spartan-6 LX9 Microboard Kit - ISE Design Suite: WebPACK and SDK Device Locked, Node-Locked License"
When I originally set up my license, I may have, out of ignorance and confusion, selected the option: "ISE Design Suite: WebPACK License" instead of the one listed above.
So, if you want to have a good ChipScope experience, select "Spartan-6 LX9 Microboard Kit - ISE Design Suite: WebPACK and SDK Device Locked, Node-Locked License" as the product when redeeming your license voucher.
Duane Benson 8/13/2012 3:48:11 PM User Rank Blogger
Re: ChipScope™ free 30-day evaluation license
Hi Brian;
I'm trying to answer the ChipScope license question right now. The Avent site, where the Spartan 6 LX9 board is sold, states that a device locked licence for Chip Scope Pro is included, as does one of the fliers inserted in the box. Xilinx doesn't normal provide that license with their WbPACK, and at the moment, I'm stopped by the license.
Hopefully, I'll have an answer from Avnet and the solution for readers here, within a day or two.
I don't have a Spartan 6 XL9 Development Board, so I will only be following along virtually :-) --- But, your blogs are so clear and thorough that it is easy to follow along with the included screen shots.
However, for those with a Spartan 6 XL9 that want to follow along, are you using the free 30-day evaluation license of ChipScope™? Or, is it included with the development board?
I included a hyperlink so that others can download if that is what you are using...
Duane Benson has decided the FPGA fabric in the Zynq All Programmable SoC will handle the short-term obstacle avoidance navigation in real-time. The Linux OS will handle longer-scope activities like point-to-point navigation.
Duane has decided that the time is ripe to get his ZedBoard bolted onto his robot with a Linux distribution up and running. That was the ultimate plan anyway, so why wait?
To save this item to your list of favorite All Programmable Planet content so you can find it later in your Profile page, click the "Save It" button next to the item.
If you found this interesting or useful, please use the links to the services below to share it with other readers. You will need a free account with each service to share an item via that service.