Quick Start Guide
General Stuff
Watch the Video Version (more details!)
What is Bora?
Bora (BORAd for binary) is a simple 'digital trainer' board. It contains switches and LEDs, which you can use to input 1's and 0's to a circuit, and see the response. Rather than requiring you to build circuits from discrete gates, it contains a programmable device which you can design with software. You download your design to the chip, which physically implements it.
What Software do I Use?
The software being used is Xilinx ISE Webpack. It's recommended to use either version 10.1 or 13.2 (see below for which version). You can download it from http://www.xilinx.com/support/download/index.htm - be warned it is very large! Direct links to the Windows and Linux installers are provided. Once you download it you will need to 'untar' the file, which is easily accomplished with software such as 7Zip.
You are required to use ISE Webpack for development. There is no alternative. This means that (A) it only runs on Windows and Linux (No Mac version), and (B) you need a lot of disk space. If you are using Windows 8 or Mac OSX, see the VirtualBox Setup (Windows 8 or Mac) page for details of an alternative method.
While this seems like overkill for such a simple board, the truth is that you are getting familiar with real development software used by thousands (or more) of companies around the world. This same software has the capability to design entire embedded processors or image processing blocks. By getting familiar with it for very simple boards, you will be in a better position as your knowledge expands to include more complicated boards.
Should I Use 10.1 or 13.2? Does it Matter?
ISE 10.1 is smaller, and requires less hard drive space on your computer. 10.1 requires around 4GB, 13.2 requires around 12 GB. The DVD in the starter kit comes with 10.1, since it will work on most peoples computers. If you have the space, a reasonably powerful computer, and ability to download a large file, 13.2 is recommended. This will get you familiar with a newer design tool, and if you plan on getting into more advanced boards after BORA you'll want a more recent version of ISE. If you don't want to burn so much hard drive space, have an older computer, or only plan on working with the binary explorer board, you'll be fine to stick with 10.1. The interface is almost the same either way.
What Next?
Assuming you have installed Webpack, following along with the quick-start below.
Quick-Start: Your First Project: a 7-Segment BCD Driver
NOTE: You can get a video version of this here: 7 Segment BCD
Step 1: Download Reference File
The 'Reference File' contains a project file that maps to the existing hardware. The Xilinx tools can be setup to support hundreds of different devices and several ways of entering your design. For now using the predefined file will make your life much easier! You can find the reference file on this page: Base_Reference_File
Step 2: Unzip the file Somewhere
You MUST unzip the file, don't just open it. You can do this by right-clicking on the zip and hit 'Extract All'. Windows will guide you through the process.
Step 3: Open the Project Folder
Open the resulting folder (it may open automatically), double-click on “DigitalTrainer_Simple.xise” which will open the Xilinx Project Navigator
Step 4: Switch to 'Implementation Mode'
The project navigator can be used to simulate your file, useful if you don't have a Bora board, or if you want to try different designs before downloading. In our case we need to select the radio button which says 'Implementation':
Step 5: Open 'io_connections.sch' file
Double-click on the io_connections.sch file. This is shown highlighted in the previous image. This will open a schematic view: you will notice in the middle it has an area which you can draw your schematic. To draw a schematic you need to place a part, and use the 'wire' tool to draw connections between them.
Step 6: Place a part: 7-segment Decoder
Go to the 'Symbols' tab, and select the 2nd category on the list (will have some local path). Select 'BCD2SevenSeg', which should let you place a symbol down as the next two screen-shots show:
Step 7: Place Grounds
In a similar way we need to place a GND to give the 7-segment a current sink. To do so we go to the 'general' category, and place a 'gnd' device:
Step 8: Wire Up
Using the wire tool from the toolbar, connect the 'Common1' and 'Common2' of the 7-segment displays to GND. Also connect SW1 to D0, SW2 to D1, SW3 to D2, and SW4 to D3. Finally wire up each segment of the output of the BCD2SevenSeg as in the following diagram. Note that depending on the version of your reference design it will look slightly different: don't worry about that!
Step 9: Save and Implement
Save the schematic. Close that schematic file to get back to the original view:
Step 10: Implement
Implement the design by ensuring the 'Implementation View' is still selected, then double-click on 'Implement Design':
Afterwards you should get a green check-mark by 'Generate Programming File':
Step 11: Plug in Bora
If you haven't already, plug in Bora. The activity LED should illuminate briefly then go out. If it does not go out the driver install might not be finished - give it a minute, then try unplugging and re-plugging.
Step 12: Download Program
In the same folder which you opened the .xise project, find a file called either program or program.bat. Double-click this to run it:
This will open a Window, which if successful takes about 30-60 seconds to run. If you have issues see the CPLD Programming Instructions section - you may need to make a tiny change to the file depending on your system.
Step 13: Download Successful
If the download is successful you will see the line "Scanned device output matched expected TDO values". You can press enter to exit the programming script.
Step 14: Testing
Once the program is downloaded, it is run. Make sure the 'CPLD Reset' switch is set to 0 (towards bottom), and try varying the inputs to see how the 7-segment display varies.
Step 15: Expanding
You can expand or change the design as much as you wish. There are several 'example' projects showing you what can be implemented on the Bora board. Whenever you change the design, you must perform the following:
1) Re-run implementation, and ensure you get a green check-mark besides "Generated Programming File"
2) Re-run the 'program' script.
1 Comments
